alfresco6.1(源码版) + onlyoffice安装部署

简要说明

本次使用alfresco sdk4.1 + docker 部署安装alfresco6.1,并完美集成onlyoffice在线文档编辑插件。

docker部署安装alfresco6.1

其实很简单,下面为官方wiki安装文档翻译+补充版

前提环境

使用Alfresco SDK 4.1有许多软件要求。

  • Java开发工具包(JDK)-版本11
  • Maven3.3 +
  • Docker-最新的稳定版本
  • JRebel(可选),用于热重新加载Web资源,配置和类
  • HotSwap代理(可选),用于热重新加载Web资源,配置和类
Java

ACS 6.0是使用Java 8编译和执行的,但强烈建议与使用Java 11的ACS 6.1+一起使用。
1.下载JDK 11,解压缩并将其配置为默认Java安装。
2. 验证JDK和JRE的安装。

$ javac -version
javac 11.0.1

$ java -version
openjdk version "11.0.1" 2018-10-16
OpenJDK Runtime Environment 18.9 (build 11.0.1+13)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.1+13, mixed mode)

3.确保正确设置了JAVA_HOME,以便其他工具(例如Maven)将使用正确的版本。

maven

Alfresco建议您更新所有Maven版本。Linux发行版和软件包管理器倾向于捆绑较旧的发行版,这是最常见的陷阱。
1.Alfresco SDK 4.1需要Maven 3.3.0+,但是建议您下载最新版本。
2.下载并安装Apache Maven,并确保在您的路径上正确配置了它。
3.验证安装。

$ mvn -v
Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-10T17:41:47+01:00)
Maven home: /usr/local/Cellar/maven/3.3.9/libexec
Java version: 11.0.1, vendor: Oracle Corporation
Java home: /Library/Java/JavaVirtualMachines/jdk-11.0.1.jdk/Contents/Home
Default locale: en_ES, platform encoding: UTF-8
OS name: "mac os x", version: "10.13.4", arch: "x86_64", family: "mac"

特别注意:
maven还需要修改path/apache-maven-3.6.3/conf/setttings.xml配置文件(添加alfresco 仓库),否则有些依赖包无法下载:

<mirrors>
    <mirror>
        <id>alfresco-public</id>
        <mirrorOf>central</mirrorOf>
        <name>Alfresco public</name>
        <url>https://artifacts.alfresco.com/nexus/content/groups/public</url>
    </mirror>
  </mirrors>
docker

Alfresco建议您更新所有Docker版本。如果您使用的是Windows或Mac的旧版本,则必须使用 存在一些已知问题的Docker Toolbox。
1.下载并安装Docker。
2.验证Docker的安装。

$ docker -v
Docker version 18.06.1-ce, build e68fc7a
从原型生成项目

1.成功配置Java和Maven之后,就该生成项目了。

mvn archetype:generate -Dfilter=org.alfresco:

系统将提示您选择所需的原型。以前可用的原型,alfresco-amp-archetype和share-amp-archetype仍会显示为一个选项,但是这些原型不是Alfresco SDK 4.1的一部分。

注意:如果使用Windows Powershell,则在过滤器部分周围需要双引号:mvn archetype:generate“ -Dfilter = org.alfresco:”。

输出看起来像这样:

[INFO] Generating project in Interactive mode
[INFO] No archetype defined. Using maven-archetype-quickstart (org.apache.maven.archetypes:maven-archetype-quickstart:1.0)
Choose archetype:
1: remote -> org.alfresco.maven.archetype:alfresco-platform-jar-archetype (Sample project with full support for lifecycle and rapid development of Platform/Repository JARs and AMPs (Alfresco Module Packages))
2: remote -> org.alfresco.maven.archetype:alfresco-share-jar-archetype (Share project with full support for lifecycle and rapid development of JARs and AMPs (Alfresco Module
        Packages))
3: remote -> org.alfresco.maven.archetype:alfresco-allinone-archetype (Sample multi-module project for All-in-One development on the Alfresco platform. Includes modules for Platform/Repository JAR and Share JAR)
...

2.选择以下原型之一:(我这里选择:alfresco-allinone-archetype。要了解它们之间的区别可转到说明)

  • org.alfresco.maven.archetype:alfresco-allinone-archetype
  • org.alfresco.maven.archetype:alfresco-platform-jar-archetype
  • org.alfresco.maven.archetype:alfresco-share-jar-archetype

3.选择最新版本,例如4.1.0。(我到这步没有选择的,默认最新的了)

Choose org.alfresco.maven.archetype:alfresco-allinone-archetype version:
1: 2.0.0-beta-1
2: 2.0.0-beta-2
3: 2.0.0-beta-3
4: 2.0.0-beta-4
5: 2.0.0
6: 2.1.0
7: 2.1.1
8: 2.2.0
9: 3.0.0
10: 3.0.1
11: 4.0.0
12: 4.1.0

4.接下来,将提示您输入其他值,例如groupId,artifactId和package,如下所示:(这里输入自己需要的名称就好,或看第5步示例)

Define value for property 'groupId':
Define value for property 'artifactId':
[INFO] Using property: version = 1.0-SNAPSHOT
Define value for property 'package':

5.根据项目指定信息后,将出现最终确认。

Confirm properties configuration:
groupId: com.acme
artifactId: my-all-in-one
version: 1.0-SNAPSHOT
package: com.acme
Y: :

6.按Y,然后按Enter。
如果一切都已正确配置,则应该看到类似以下内容:

[INFO] ----------------------------------------------------------------------------
[INFO] Using following parameters for creating project from Archetype: alfresco-allinone-archetype:4.1.0-SNAPSHOT
[INFO] ----------------------------------------------------------------------------
[INFO] Parameter: groupId, Value: com.acme
[INFO] Parameter: artifactId, Value: my-all-in-one
[INFO] Parameter: version, Value: 1.0-SNAPSHOT
[INFO] Parameter: package, Value: com.acme
[INFO] Parameter: packageInPathFormat, Value: com/acme
[INFO] Parameter: package, Value: com.acme
[INFO] Parameter: groupId, Value: com.acme
[INFO] Parameter: artifactId, Value: my-all-in-one
[INFO] Parameter: version, Value: 1.0-SNAPSHOT
[INFO] Parent element not overwritten in /Users/Alfresco/my-all-in-one/my-all-in-one-platform/pom.xml
[INFO] Parent element not overwritten in /Users/Alfresco/my-all-in-one/my-all-in-one-share/pom.xml
[INFO] Parent element not overwritten in /Users/Alfresco/my-all-in-one/my-all-in-one-integration-tests/pom.xml
[INFO] Parent element not overwritten in /Users/Alfresco/my-all-in-one/my-all-in-one-platform-docker/pom.xml
[INFO] Parent element not overwritten in /Users/Alfresco/my-all-in-one/my-all-in-one-share-docker/pom.xml
[INFO] Executing META-INF/archetype-post-generate.groovy post-generation script
[INFO] Project created from Archetype in dir: /Users/Alfresco/my-all-in-one
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 04:11 min
[INFO] Finished at: 2019-01-10T16:21:46+01:00
[INFO] Final Memory: 17M/1024M
[INFO] ------------------------------------------------------------------------

7.您已成功生成第一个SDK 4.1项目。

项目内部,您将找到run.bat和run.sh脚本。这些是便利脚本,可让您快速编译/测试/运行项目。
在终端窗口中,使用:

  • ./run.sh build_start 适用于Mac OS X或Linux。
  • run.bat build_start 对于Windows。
    如果这是您第一次这样做,那么Maven将需要一段时间来下载所有必需的依赖项,而Docker将需要一些时间来下载所有必需的映像。

第一次执行上面命令过程会非常久非常久,请一定要耐心等待哈…
等项目跑完就可以访问如下地址:(不修改端口的情况下)
acs:http://localhost:8080/afresco 效果图:
asc

共享项目:http://localhost:8180/share/
登录用户名/密码:admin/admin
share

有关如何使用项目的更多信息,请访问使用生成的项目

集成onlyoffice在线文档编辑插件

集成onlyoffice说难不难,说简单不简单。怎么这么说呢?来,边走边说,我们开始来集成吧:

从官方文档可知,我们要扩展第三方插件,都是通过Alfresco模块软件包(AMP)这种定制包装的方式来安装的。Ok,onlyoffice-alfresco 这个插件已经有大神写好了,我们来找到它onlyoffice-alfresco(👈对,就是它)。

我们点击进去,发现人家的文档已经很详细了,我们直接按照它的文档一步一步配置就好了,我这里就不重复写了哈,总结几个要点:

  • 安装onlyoffice服务,推荐使用docker安装就好啦(官方文档有),源码版太麻烦,也没这个必要
  • 获取onlyoffice-alfresco AMP包有两种方式:一种是把源码拉下来编译生成(麻烦);另一种就是直接在Releases中下载(方便简单),如下图:
    在这里插入图片描述
  • 最后重点来了,我们怎么去安装我们下载下来的AMP插件呢?要说难,就在这儿了。OK,那么问题来了,官方文档难道没有讲如何安装AMP包吗?有,是有的。而且文档上讲,安装AMP也非常简单。来我们一起来看看吧👉如何使用AMP或者直接看下面,我把核心部分复制出来了
安装第三方AMP

以下为官方文档内容:
在项目中安装第三方AMP非常简单。唯一的要求是将依赖项添加到项目中。默认配置将在相应的Docker映像中安装任何设置为maven依赖项的AMP。重要的是要记住,ACS和Share是分开的容器,因此如果是All-In-One项目,则需要在相应的docker模块中添加依赖项。

这是如何安装Florian Maul的Javascript控制台的示例。

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <artifactId>sample-module-platform-docker</artifactId>
    <name>Alfresco Platform/Repository Docker Module</name>
    <description>Platform/Repo Docker Module to generate the final Docker image</description>
    <packaging>jar</packaging>

    <parent>
        <groupId>org.alfresco</groupId>
        <artifactId>sample-module</artifactId>
        <version>1.0-SNAPSHOT</version>
    </parent>

    <properties>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.alfresco</groupId>
            <artifactId>sample-module-platform</artifactId>
            <version>1.0-SNAPSHOT</version>
        </dependency>

        <!-- Javascript Console AMP -->
        <dependency>
            <groupId>de.fmaul</groupId>
            <artifactId>javascript-console-repo</artifactId>
            <version>0.6</version>
            <type>amp</type>
        </dependency>
    </dependencies>
    
    ...
</project>

好了,示例大家也看了,的确好简单呀。
开开心心的来到maven中央仓库搜索了下onlyoffice-alfresco amp包,结果如下:
在这里插入图片描述
一个一个点开,压根没有我想要的AMP包呀,怎么办怎么办(我开始慌了🥶)?我灵机一动,咦,刚刚下载到本地有AMP包呀,那是否可以直接把它拖到本地的maven仓库下引用呀(心中狂喜😬)(其实,大家如果没有想通这点,就一直卡在这儿了,想通就很简单啦)。吓得我赶紧把那两个amp包安装到本地maven仓库,这是安装命令:

mvn install:install-file "-Dfile=onlyoffice-alfresco-share-1.4.1.amp" "-DgroupId=org.alfresco.onlyoffice" "-DartifactId=alfresco-share" "-Dversion=1.4.1" "-Dpackaging=amp"

都安装成功会出现success字样,图就不截了,下面就差把它们按照官方文档上的方式配置进去了:(platform和share两个项目都要相应配置上去哦)

		<dependency>
            <groupId>org.alfresco.onlyoffice</groupId>
            <artifactId>alfresco-repo</artifactId>
            <version>1.4.1</version>
            <type>amp</type>
        </dependency>
        <dependency>
            <groupId>org.alfresco.onlyoffice</groupId>
            <artifactId>alfresco-share</artifactId>
            <version>1.4.1</version>
            <type>amp</type>
        </dependency>

至此:重新构建并启动alfresco登录后,你会发现,世界如此美好😭~!

【广告】推荐一个好玩有趣的在线工具网站,喜欢可以收藏一下哦:
在线工具

效果预览

在这里插入图片描述
点击Edit in ONLYOFFICE后:
在这里插入图片描述

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 10
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值