【问题标题】:How can i create a jar of a java project which contains src/main/java and src/test/java with dependencies using maven我如何使用 maven 创建一个包含 src/main/java 和 src/test/java 的 java 项目的 jar 和依赖项
【发布时间】:2014-11-19 19:38:14
【问题描述】:

如何使用 maven 创建一个包含 src/main/java 和 src/test/java 的 java 项目的 jar。

注意:不应在创建 jar 时运行测试用例。

我用这个 mvn clean compile assembly:single to generate jar 生成 jar 只包含 src/main/javadependencies 但是不是 src/test/java。

谁能告诉我如何解决这个问题。问题是由于 pom 文件引起的吗?我应该在 pom 中得到什么。

我的项目结构如下:

谢谢

【问题讨论】:

  • 这是 Maven 的工作方式。为什么要在 JAR 文件中提供测试类?
  • 我需要通过复制这个 jar 在不同的机器上运行 selenium 测试用例
  • 你有没有看过documentation of the Maven JAR plugin?在那里你会找到你的答案。事实上,您最好在提问之前阅读更多文档。
  • 是的。当我将 maven 目标添加为 jar:test-jar 然后运行它不会生成测试类

标签: java maven jar


【解决方案1】:

你可以使用..

mvn clean install -DskipTests

我认为你没有依赖包插件。在你的 pom.xml 中添加这个

<plugin>
    <artifactId>maven-assembly-plugin</artifactId>
    <executions>
      <execution>
        <phase>package</phase>
        <goals>
          <goal>single</goal>
        </goals>
      </execution>
    </executions>
    <configuration>
      <descriptorRefs>
        <descriptorRef>jar-with-dependencies</descriptorRef>
      </descriptorRefs>
    </configuration>
  </plugin>

【讨论】:

  • 谢谢。但是这个命令不包括maven依赖jars
  • 谢谢。它为我创建了 3 个 jars。我们不能制作一个 jar 或 main 并依赖一个 jar 和测试用例其他 jar
【解决方案2】:

你为什么不把你的程序放到eclipse中呢

File->Export->Java->Runnable JAR file-> Save Location-> finish 

您的 jar 文件将位于保存位置。

【讨论】:

  • 我知道这一点,但我想在不手动导出的情况下自动化这个过程
猜你喜欢
  • 2020-03-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-05-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多