我试图从项目的根目录开始检索整个依赖树和它们的poms。 我开始使用已存在于我的文件系统中的POM,但我不确定如何从存储库中检索依赖poms。 我使用以下代码来访问依赖项列表。 从列表中我可以获得有关工件的所有信息。 我只是不确定如何访问存储库。 FileReader reader = null; Model model = null; MavenXpp3Reader mavenreader = new MavenXpp3Reader(); File pomfile = new File(“pom.xml”); model.setPomFile(pomfile); MavenProject project = new MavenProject(model); List deps = project.getDependencies(); // Get dependency details for (Dependency d: deps) { System.out.print(d.getArtifactId()); System.out.print(“:”); System.out.println(d.getVersion()); }
我试图通过以下pom部分为我的maven生命周期添加一个目标。 我定义了一个新插件并使用阶段和执行信息对其进行了配置。 org.apache.openjpa openjpa-maven-plugin 2.2.0 **/entity/*.class true com.ibm.db2.jcc.DB2Driver true ${project.build.directory}/database.sql sql generate-resources sql enhancer process-classes enhance org.apache.openjpa openjpa 2.1.1 然后我用mvn:install运行maven mvn:install但插件没有运行?
当我没有在我的pom.xml文件中定义如下内容时,在我的系统中为Maven定义了在编译时使用哪个版本的Java JDK(我的系统上安装了多个版本, JAVA_HOME指向其中一个版本) ? org.apache.maven.plugins maven-compiler-plugin 2.3.2 1.5 1.5
我正在使用JUnit Categories将集成测试与unit testing分开。 Surefire插件配置有效 – 它会跳过使用我的标记接口IntegrationTest注释的测试。 但是,Failsafe插件不会选择集成测试。 我甚至尝试指定junit47提供程序,但是在集成测试阶段运行零测试。 这是pom.xml片段: org.apache.maven.plugins maven-failsafe-plugin 2.12 integration-test com.mycompany.test.IntegrationTest com.mycompany.test.UnitTest org.apache.maven.surefire surefire-junit47 2.12 这是日志的故障安全部分: [INFO] — maven-failsafe-plugin:2.12:integration-test (default) @ MyProject.war — [INFO] Failsafe report directory: /home/stoupa/MyProject/war/target/failsafe-reports [INFO] Using configured provider org.apache.maven.surefire.junitcore.JUnitCoreProvider ——————————————————- TESTS ——————————————————- Concurrency config is parallel=’none’, perCoreThreadCount=true, threadCount=2, useUnlimitedThreads=false Results : Tests run: 0, Failures: 0, Errors: 0, […]
我从Hibernate网站下载了zip文件,我们有一个包含所有必需jar的文件夹。 但我想和Maven一起做这件事。 我是否需要检查这个Hibernate版本所需的库,并在pom.xml手动添加它们? 有没有办法只添加hibernate和maven来添加所有必需的库本身?
我有一台安装了JDK&JRE 6和7的Jenkins服务器。 所有项目都建立在1.6上,除了1.7依赖项目。 我已经将maven pom文件配置为使用JAVA_HOME_7环境PATH中的Java编译器。 org.apache.maven.plugins maven-compiler-plugin 3.0 1.7 1.7 true true **${env.JAVA_HOME_7}/bin/javac** true false 在mvn安装期间,我收到以下错误: java.lang.RuntimeException: There was an error in the forked process java.lang.UnsupportedClassVersionError: : Unsupported major.minor version 51.0 我认为这意味着服务器正在使用JRE 1.6。 如何将JRE 1.6与1.7保持在一起以保持与旧1.6项目和新1.7项目的兼容性? 非常感谢,Atanas
我正在使用Intellij Java 2016.2.2和Maven来创建一个非常简单的Java控制台应用程序。 我想添加一个外部库,所以我在Maven中添加我的依赖项,如下所示: jline jline 2.12 它在IDE中运行时工作正常,但在外部控制台中没有(我有以下错误: java.lang.NoClassDefFoundError )。 我检查过,由于某种原因,外部JAR没有添加到我刚刚生成的JAR中。 我还在“文件 – >项目结构”中尝试了很多东西,但仍然没有工作…… 我只想用我的依赖项构建我的JAR,所以我可以使用以下命令在控制台中运行我的应用程序: java -jar myproject.jar 我怎样才能做到这一点? 谢谢你的帮助!
我有一个应该在编译阶段运行的maven插件,因此在使用我的插件的项目中,我必须做这样的事情: compile my-goal 我需要的是默认情况下,如果用户已经包含了我的插件,那么将my-goal附加到编译阶段(理想情况下,上面的部分不是必需的,只是插件声明)。 这可能吗?
POM文件的主要function是什么?为什么它实际使用? 无论我们在其中提供什么,依赖关系如何映射到Java虚拟机并在应用程序上变得灵活?
我有一个有趣的问题,而不是寻找解决方案,我正在寻找解决方案。 Project Alice有一个pom.xml。 在它里面,pom说她被打包成一个jar子,虽然她是一个坚强的女人,但她依赖鲍勃。 项目鲍勃,作为一个补充,说他依赖爱丽丝。 因此循环依赖。 当然,在Alice上运行mvn compile说“Alice正在失踪Bob”。 鲍勃,真正的浪漫,如果你试着编译他,他也会想念爱丽丝。 既然没有其他人在场,他们都不会遵守,我正在寻找解决这个问题的方法。 我只知道如何解决这个问题的两种方法: 嫁给他们,让他们成为一个maven项目。 打破他们的共同依赖 除了我不想宣传乱伦这一事实之外,还会制作父母pom并让Alice和Bob兄弟姐妹解决这个问题吗? 任何其他解决方案?