在构建ActiveJDBC(我是项目的作者)时,它首先构建一个Maven插件:https://github.com/javalite/activejdbc/tree/master/activejdbc-instrumentation
安装插件后,它将在另一个项目模块(这是一个多模块项目)上使用。
有时构建成功,有时会因以下错误消息而中断:

[INFO] JavaLite - Common .................................. SUCCESS [  4.241 s]
[INFO] JavaLite - Instrumentation Plugin and JavaAgent .... SUCCESS [  2.590 s]
[INFO] JavaLite - ActiveJDBC ORM Framework ................ FAILURE [  5.526 s]
[INFO] JavaLite - DB-Migrator Maven Plugin ................ SKIPPED
[INFO] JavaLite - DB-Migrator Integration Test ............ SKIPPED
[INFO] JavaLite - Git Info Maven plugin ................... SKIPPED
[INFO] JavaLite - ActiveJDBC Root ......................... SKIPPED
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 12.572 s
[INFO] Finished at: 2014-10-27T23:01:22-05:00
[INFO] Final Memory: 26M/271M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.javalite:activejdbc-instrumentation:1.4.10-SNAPSHOT:instrument (default) on project activejdbc: Execution default of goal org.javalite:activejdbc-instrumentation:1.4.10-SNAPSHOT:instrument failed: A required class was missing while executing org.javalite:activejdbc-instrumentation:1.4.10-SNAPSHOT:instrument: javassist/ClassPath
[ERROR] -----------------------------------------------------
[ERROR] realm =    plugin>org.javalite:activejdbc-instrumentation:1.4.10-SNAPSHOT
[ERROR] strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy
[ERROR] urls[0] = file:/home/igor/projects/javalite/activejdbc/activejdbc-instrumentation/target/activejdbc-instrumentation-1.4.10-SNAPSHOT.jar
[ERROR] urls[1] = file:/home/igor/.m2/repository/org/codehaus/plexus/plexus-utils/1.1/plexus-utils-1.1.jar
[ERROR] urls[2] = file:/home/igor/projects/javalite/activejdbc/activejdbc/target/classes/
[ERROR] urls[3] = file:/home/igor/.m2/repository/org/slf4j/slf4j-api/1.7.5/slf4j-api-1.7.5.jar
[ERROR] urls[4] = file:/home/igor/projects/javalite/activejdbc/javalite-common/target/javalite-common-1.4.10-SNAPSHOT.jar
[ERROR] urls[5] = file:/home/igor/projects/javalite/activejdbc/activejdbc/target/test-classes/
[ERROR] Number of foreign imports: 1
[ERROR] import: Entry[import  from realm ClassRealm[maven.api, parent: null]]
[ERROR]
[ERROR] -----------------------------------------------------: javassist.ClassPath
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/PluginContainerException
[ERROR]
[ERROR] After correcting the problems, you can resume the build with the command
[ERROR]   mvn <goals> -rf :activejdbc


据我所知,问题是:
A required class was missing while executing org.javalite:activejdbc-instrumentation:1.4.10-SNAPSHOT:instrument: javassist/ClassPath

但是,此类直接打包到插件的jar文件中,请参见此处:
https://oss.sonatype.org/content/repositories/snapshots/org/javalite/activejdbc/1.4.10-SNAPSHOT/

因此,构建有时会起作用,但有时会中断..在相同的终端窗口上,无需更改代码或配置即可。基本上,在获得成功之前,我需要进行几次构建。请帮助确定并解决问题,

我尝试了Maven 3.0.4和3.2.3。

谢谢

最佳答案

您对pom中的javassist有依赖性吗?

<dependency>
  <groupId>javassist</groupId>
  <artifactId>javassist</artifactId>
  <version>3.18.2.GA</version>
</dependency>

09-27 01:37