露天-行家-插件; truezip问题预先放大WAR

时间:2015-03-05 16:40:02

标签: maven alfresco

我真的在与alfresco-maven-plugin挣扎并寻求一些帮助。用例是在部署到与安全环境中运行apply_amp.sh的文件权限问题相关的系统之前,将AMP预先应用于露天并共享WAR(版本4.2.f)。

我已经尝试了以下1.1.1和2.0.0版本,两者都与关联的父级alfresco-sdk-parent和没有(注意:没有父级是首选,因为我们有公司的父POM用于分发和其他原因)

        <plugin>
            <groupId>org.alfresco.maven.plugin</groupId>
            <artifactId>alfresco-maven-plugin</artifactId>
            <version>1.1.1</version>
            <extensions>true</extensions>
            <executions>
                <execution>
                    <id>install-amps</id>
                    <goals>
                        <goal>install</goal>
                    </goals>
                    <phase>package</phase>
                </execution>
            </executions>
            <configuration>
                <ampLocation>${project.build.directory}/amps</ampLocation>
                         <warLocation>${project.build.directory}/${project.artifactId}-${project.version}-war</warLocation>
            </configuration>
        </plugin>

始终如一地收到错误:

java.lang.NoClassDefFoundError: de/schlichtherle/truezip/fs/FsSyncExceptionBuilder

我添加了依赖项和插件依赖项,truezip,truezip-file,truezip-driver-file,truezip-driver-zip,truezip-swing,尝试从6.X到7.8.1的truezip版本,尝试明确列出alfresco-mmt版本4.2.f到5.0.c(5.0.x似乎预先捆绑,但没有帮助maven插件)。

请问任何指导?

编辑:2年前提出的这个问题的答案被回答与不正确版本的maven有关。稍后会询问可能重复的TrueZip: NoClassDefFoundError (but for shutdown hook only?),但没有提供答案/没有解决问题;请注意,此问题被视为已“回答”并已解决。

2 个答案:

答案 0 :(得分:1)

您使用的是不受支持的Maven版本(事实上,Alfresco SDK 2.0.0需要Maven 3.2.5及更高版本,请参阅http://docs.alfresco.com/sdk2.0/tasks/alfresco-sdk-install-maven.html)。

这解释了为什么您会看到这个问题,而在正确测试的配置中却不存在这个问题。

也会关闭相关的https://github.com/Alfresco/alfresco-sdk/issues/265

答案 1 :(得分:0)

我做的解决方法是:

从2015年3月9日起,从这里结账2.0.1-SNAPSHOT: https://github.com/Alfresco/alfresco-sdk

使用maven 3.0.5,jdk7,更改插件/ alfresco-maven-plugin / pom.xml,从版本3.2更改为此版本的maven-plugin-plugin条目,以便实际编译新版本的alfresco -maven-插件:

            <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-plugin-plugin</artifactId>
            <version>3.0</version>
            <!-- <version>3.2</version> <executions> <execution> <id>generated-helpmojo</id> 
                <goals> <goal>helpmojo</goal> </goals> </execution> </executions> -->


        </plugin>

在我的项目中更新alfresco-maven-plugin的2.0.1-SNAPSHOT,它按预期工作(不需要alfresco-sdk父pom)。

可以通过下载或复制alfresco-mmt jar并使用以下方法检查预先应用AMP的新WAR:

java -jar alfresco-mmt.jar list ${project}/target/${newalfresco}.war

跟踪器,直到它得到解决:https://github.com/Alfresco/alfresco-sdk/issues/265https://github.com/Alfresco/alfresco-sdk/issues/266