【问题标题】:[TestNG][Jar] Set Classpath in Manifest (Class-Path) -- classpath is ignored?[TestNG][Jar] 在清单中设置类路径(类路径)——类路径被忽略?
【发布时间】:2023-03-04 08:09:05
【问题描述】:

我正在尝试运行一个驻留在 jar 文件中的简单 TestNG 测试用例,它 包含测试和清单:

ex.) Test.jar 包含: { 元信息\ 元信息\清单.MF 测试\ 测试\Test01.class }

我正在尝试使用以下命令运行它:java org.testng.TestNG - testjar Test.jar testng.xml

文件夹包含的位置(都在同一个目录中): 测试.jar testng.xml testng-6.1.1.jar

Manifest 包含(末尾有换行符): 清单版本:1.0 创建者:威利·欧文斯 类路径:testng-6.1.1.jar Test.jar .

我得到一个 NoClassDefFoundError: org/testng/TestNG.找不到 主类。

如果我在“java”之后使用 -cp 指定类路径(例如 java -cp testng-6.1.1.jar;Test.jar org.testng.TestNG -testjar Test.jar testng.xml)它可以工作,但我想要清单中的这些信息。 我在这里做错了什么?

另外,我已经尝试了在 Class-Path 中输入时我能想到的所有变体,例如:./testng-6.1.1.jar .\testng-6.1.1.jar ...等。

帮助

【问题讨论】:

  • 必须使用 -cp 开关引用 Test.jar 才能工作。丑陋,不知道为什么默认情况下它不是我在命令中引用的 jar,但它现在可以工作。

标签: java jar classpath manifest testng


【解决方案1】:

使用 testNg 执行 test-jar 并不复杂,请参阅 [1] 了解更多详细信息。

如果您发现任何陷阱,请告诉我。

[1]http://dharshanaw.blogspot.com/2012/10/how-to-execute-testng-tests-in-side.html

【讨论】:

    猜你喜欢
    • 2011-08-17
    • 2012-02-06
    • 2015-11-20
    • 2011-01-08
    • 2018-04-10
    • 1970-01-01
    • 2015-01-18
    • 2016-09-04
    • 2015-04-01
    相关资源
    最近更新 更多