我正在使用Maven构建Selenium和TestNG自动化项目。 我使用Maven文件夹结构创建了整个项目,并使用Excel工作表获取测试数据。
我想创建一个项目的可运行jar,以便我可以从另一个系统运行它。我能够成功创建一个包含所有依赖项的jar文件以及MANIFEST.MF中的主类。
但是,当我运行jar文件时,我得到IO Exception。 我相信整个问题是测试数据表没有在jar中打包。 测试数据表出现在test-classes文件夹下,而不是在打包的jar中。
有人可以为此建议解决方案或解决方法吗? 我附上了我的项目文件夹结构Project Structure的屏幕截图和我的pom.xml pom.xml的片段
答案 0 :(得分:0)
在src / main / java中移动Main类,并添加:
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<archive>
<manifest>
<mainClass>com.ee.testScrips.Main</mainClass>
</manifest>
</archive>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
</plugin>
如果要创建包含测试类的jar:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.6</version>
<executions>
<execution>
<goals>
<goal>test-jar</goal>
</goals>
</execution>
</executions>
</plugin>