Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/perl/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Java中动态执行项目二进制文件_Java_Maven_Testng - Fatal编程技术网

如何在Java中动态执行项目二进制文件

如何在Java中动态执行项目二进制文件,java,maven,testng,Java,Maven,Testng,我有一个maven项目。它在我的特定文件夹中包含TestNGxml文件。(src/taget/myfiles)。每次构建我都会收集项目的二进制文件作为jar。假设我从包含更新的TestNG.xml文件版本的项目中收集了3个二进制文件 例如: 版本1.jar mytest.xml version 1 mytest.xml version 2 mytest.xml version 3 版本2.jar mytest.xml version 1 mytest.xml version 2

我有一个maven项目。它在我的特定文件夹中包含TestNGxml文件。
(src/taget/myfiles)
。每次构建我都会收集项目的二进制文件作为jar。假设我从包含更新的TestNG.xml文件版本的项目中收集了3个二进制文件

例如:

版本1.jar

 mytest.xml version 1
 mytest.xml version 2
mytest.xml version 3
版本2.jar

 mytest.xml version 1
 mytest.xml version 2
mytest.xml version 3
版本3.jar

 mytest.xml version 1
 mytest.xml version 2
mytest.xml version 3

我的要求是,当我选择特定的项目二进制文件时,比如说我选择了一些较旧的
version 2
,而不是最新的
version 3
,当程序运行时,它应该从我的
version 2.jar
中选择
mytest.xml V2
文件。实际上,如果有人知道,请告诉我知道。

我建议在收集测试二进制文件时,在maven存储库中安装特定版本的测试二进制文件。比方说app-test-1.0.0-V1-SNAPSHOT或您喜欢的任何版本。执行时,只需操作V1/V2/V3版本部分即可检索此工件并运行它。

当前设置中的数字是如何派生的?@Thorbjørn Ravn Andersen让我们假设最新版本是4,实际上它位于eclipse中的
src/target文件夹中。
。因此,您不使用数字,你只需要处理maven编译的任何东西吗?我使用像myproject-15.1-Snapshot这样的数字是的,我使用maven nexus存储二进制文件的方法是一样的。但我的要求是如何针对选定的项目二进制文件运行。(一些较旧的二进制文件)一种方法可能是不获取二进制文件,而是获取源工件,并将其解压缩,然后简单地运行“mvn测试”你知道如何以编程的方式完成吗。你知道像Jenkins这样的构建服务器吗?在maven中,有一些任务需要解包工件,所以我认为你需要的一切都可以通过mvn实现。