java - Maven 出现间歇性问题,缺少所需的类

标签 java maven

构建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

据我所知,问题是: 执行 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>

关于java - Maven 出现间歇性问题,缺少所需的类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26600761/

相关文章:

Java DPAPI JNI 错误 java.lang.UnsatisfiedLinkError :

java - 将多个项目导出为 jar

java - Java 中的 ElasticSearch 库无法找到 AggregationBuilders.sum 方法

java - Maven 故障安全插件失败并显示 "Unable to locate surefire-booter"

java - 从 public static void main 测试 Hibernate + Spring

java - Windows 上的 Grails 出错。无法找到有效的认证

java - 删除 Hibernate 生成的延迟初始化代理的最安全方法是什么?

java - 使用 Jackson 反转 JSON pretty-print

java - weblogic 中的热修复

android - 没有任何代码更改的 Android Studio 的 Gradle 构建失败