gpt4 book ai didi

java - HP TestExportTool 不断询问依赖关系

转载 作者:行者123 更新时间:2023-12-01 19:51:42 24 4
gpt4 key购买 nike

我有一个 LeanFT 项目,当我从 IDE 执行它时,它工作正常。我使用 maven-assemble-plugin 生成了一个 jar 文件。

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>3.1.0</version>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
<configuration>
<archive>
<manifest>
<mainClass>test.LeanFTest</mainClass>
</manifest>
</archive>
<finalName>${project.artifactId}-fatjar-${project.version}</finalName>
<appendAssemblyId>false</appendAssemblyId>
<descriptors>
<descriptor>src/main/assembly/leanft-assembly.xml</descriptor>
</descriptors>
</configuration>
</plugin>

当我尝试通过 TestExportTool 执行它(为 ALM 导入生成 XML 文件)时,我收到各种错误消息,例如:

log4j: WARN JmDNS or serviceInfo not found

java.lang.UnsatisfiedLinkError: no NTEventLogAppender

java.lang.NoClassDefFoundError

我导入了所有必要的类,解决了这些问题,但是 TestExportTool 一次又一次出现异常。我添加了这些依赖项,由错误消息报告,但项目未使用这些依赖项,因此不确定它为什么要求。

   <dependency>
<groupId>org.jmdns</groupId>
<artifactId>jmdns</artifactId>
<version>3.5.1</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.25</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-slf4j-impl</artifactId>
<version>2.11.0</version>
</dependency>
<dependency>
<groupId>org.dblock.log4jna</groupId>
<artifactId>log4jna-api</artifactId>
<version>2.0</version>
</dependency>
<dependency>
<groupId>org.yaml</groupId>
<artifactId>snakeyaml</artifactId>
<version>1.21</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>

leanft- assembly.xml 文件:

<id>fat-tests</id>
<formats>
<format>jar</format>
</formats>
<includeBaseDirectory>false</includeBaseDirectory>
<dependencySets>
<dependencySet>
<outputDirectory>/</outputDirectory>
<useProjectArtifact>true</useProjectArtifact>
<unpack>true</unpack>
<scope>test</scope>
</dependencySet>
</dependencySets>
<fileSets>
<fileSet>
<directory>${project.build.directory}/test-classes</directory>
<outputDirectory>/</outputDirectory>
<includes>
<include>*.class</include>
</includes>
<useDefaultExcludes>true</useDefaultExcludes>
</fileSet>
</fileSets>

最新错误消息的详细堆栈跟踪:

Hewlett-Packard Enterprise LeanFT Test Export Tool. [main] DEBUG javax.jmdns.impl.JmDNSImpl - JmDNS instance created 2018-07-06 11:17:21,741 Exception in thread "main" java.lang.NoClassDefFoundErr or: org/apache/tools/ant/taskdefs/LogOutputStream at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(Unknown Source) at java.security.SecureClassLoader.defineClass(Unknown Source) at java.net.URLClassLoader.defineClass(Unknown Source) at java.net.URLClassLoader.access$100(Unknown Source) at java.net.URLClassLoader$1.run(Unknown Source) at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Unknown Source) at com.hp.lft.testexporttool.internal.JarFileLoader.getPublicClassesFrom JarFile(JarFileLoader.java:48) at com.hp.lft.testexporttool.internal.TestsExporter.export(TestsExporter .java:26) at com.hp.lft.testexporttool.ExportTests.main(ExportTests.java:41) Caused by: java.lang.ClassNotFoundException: org.apache.tools.ant.taskdefs.LogOu tputStream at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source)

更新 07.09。:我添加了 TestExportTool 请求的所有依赖项。我从 Hewlett-Packard Enterprise LeanFT 测试导出工具收到以下消息:

[main] DEBUG javax.jmdns.impl.JmDNSImpl - JmDNS instance created 2018-07-09 13:25:17,419 bshpath.BshClassLoader

最佳答案

听起来像NTEventLogAppender.dll在 PATH 上不可用。有关 Log4J 如何以及为何使用它的更多详细信息 here - 可在 .zip 中找到下载文件。

但是,这仅适用于 Log4J (v1.2),而不是 Log4J 2 - 看起来这就是这些依赖项中想要的?对于 Log4J 2,SLF4J 绑定(bind)应该是 org.apache.logging.log4j:log4j-slf4j-impl:2.11.0 (而不是 org.slf4j:slf4j-log4j12:1.7.25 )。

关于java - HP TestExportTool 不断询问依赖关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51150520/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com