UFT14.02环境下LeanFT TestExportTool签名摘要无效问题求助
解决LeanFT TestExportTool的"Invalid signature file digest"错误
这个错误通常是因为你用IntelliJ生成的TestNG测试jar包里包含了签名验证文件(比如META-INF目录下的.SF、.DSA、.RSA文件),LeanFT的TestExportTool无法处理这些带签名的jar内容。下面是具体的修复步骤:
步骤1:解压问题jar包
用命令行或解压工具把你的MyTestNGTests.jar解压到临时目录:
unzip "C:\LeanFT\MyTestNGTests.jar" -d C:\LeanFT\test_temp
如果没有unzip命令,直接用WinRAR/7-Zip右键解压到指定文件夹也可以。
步骤2:删除签名相关文件
进入解压后的test_temp/META-INF目录,删除所有后缀为.SF、.DSA、.RSA的文件——这些是第三方库的签名信息,LeanFT工具不需要它们。
步骤3:重新打包成干净的jar
用Java的jar命令重新打包解压后的内容:
jar cvf "C:\LeanFT\MyTestNGTests_Fixed.jar" -C C:\LeanFT\test_temp/ .
这条命令会把test_temp下的所有文件打包成新的MyTestNGTests_Fixed.jar,且不包含之前的签名文件。
步骤4:用修复后的jar运行TestExportTool
现在执行原来的命令,替换成修复后的jar文件:
java -jar "C:\Program Files (x86)\HP\LeanFT\Tools\TestExportTool\test-export-tool.jar" "C:\LeanFT\MyTestNGTests_Fixed.jar" -classpath:"C:\TestNG\testng.jar"
额外提示:从源头避免问题
如果你不想每次都手动修复,可以在IntelliJ生成Artifact的时候直接排除签名文件:
- 打开
File > Project Structure > Artifacts - 找到你要生成的TestNG jar对应的Artifact配置
- 展开
META-INF节点,右键点击所有.SF、.DSA、.RSA文件,选择Exclude from Artifact - 重新构建Artifact,生成的jar就不会包含这些签名文件了
内容的提问来源于stack exchange,提问作者plaidshirt
相关产品推荐
相关产品推荐

