当前位置: 首页 > 知识库问答 >
问题:

如何通过--add-opens JDK模块配置到maven测试

郭元明
2023-03-14

我正在将产品代码中的java版本从Java8升级到Java11。

由于使用了第三方库,如flume,zookeeper等,我必须在应用程序java start命令中添加以下JDK模块配置。

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-surefire-plugin</artifactId>
    <version>3.0.0-M5</version>
    <configuration>
        <argLine>--illegal-access=permit</argLine>
        <argLine>--add-opens java.base/java.lang=ALL-UNNAMED</argLine>
        <argLine>--add-opens jdk.management/com.sun.management.internal=ALL-UNNAMED</argLine>
        <argLine>-Dillegal-access=permit</argLine>
    </configuration>
</plugin>

共有1个答案

能正青
2023-03-14

它是一个argline,类似于:

<argLine>
    --add-exports org.junit.platform.commons/org.junit.platform.commons.util=ALL-UNNAMED
    --add-exports org.junit.platform.commons/org.junit.platform.commons.logging=ALL-UNNAMED
</argLine>
 类似资料:
  • 我有根项目,然后是子模块。这些模块是相互依赖的,当我为一个模块运行maven测试时,它会抛出类未找到异常。 ProjectA --ProjectSubA --ProjectSubB --ProjectSubC(依赖项ProjectA和ProjectB) ProjectSubC有Maven测试,所以当它运行时,类在ProjectSubB和ProjectSubA中。现在如何解决这个问题。

  • 使用Spring maven上下文,我希望运行基于maven概要文件的特定测试。我想有一个简单的方法标记测试组。如果可能的话,我想使用注释。有哪些选项,如maven命令行参数、maven配置文件规范等。 假设我有以下测试: 示例: 下面的精彩答案集中在JUnit的@Category机制上。感谢大家! 另一种方法是通过以下步骤:[1]在maven配置文件中设置一个属性,[2]使用该属性通过标准sur

  • 如果jar项目不包含启动程序,我如何测试它们? 示例JUnit测试用例头:

  • 问题内容: 我一直在尝试使用Maven Shade插件来获取jar,但是我仍然没有成功。 这是我的项目结构: Module1(pom.xml): Module2(pom.xml): MainModule(pom.xml): 根据这段代码,我得到了2个jar文件(Module1-version.jar和Module2-version.jar)。但这不是我想要的。我希望得到1个jar文件(MainMo

  • 我在eclipse中设置了一个“Maven项目”(简单项目),并为其添加了类和单元测试。测试运行良好。 但是,当我在“src/main/java”中添加“module info.java”时,单元测试未能启动: 信息:“workspace2”是我工作区的名称,“unittest”是项目名称。 如果我通过控制台运行maven(相同的maven和java版本),它运行良好。 设置: -eclipse:

  • 问题内容: 使用Spring Maven上下文,我想基于Maven配置文件运行特定的测试。我想有一种标记测试组的简单方法。如果可能的话,我想使用注释。那里有哪些选项,例如maven命令行参数,maven配置文件规范等。 说我有以下测试: 例: 当然,@ Profile(用于创建Bean)和@ActiveProfile(用于选择特定的配置文件以创建Bean)之类的注释不能用于选择测试。所有测试仅针对