我在我的应用程序中嵌入了Jetty。为了在我的构建服务器上自动执行我的集成测试,我希望Maven在预集成测试阶段启动我的应用程序。集成测试在另一个项目中,而不是测试的应用程序,因为测试的性质非常复杂,应该与生产代码分开。
我尝试使用Maven exec插件设置我的应用程序,但继续运行ClassNotFoundErrors。我使用maven-dependency-plugin将所有依赖项复制到target / lib /。到目前为止,我还没有弄清楚如何告诉exec插件将该lib文件夹添加到类路径中。
这是我当前的exec插件配置:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.2.1</version>
<executions>
<execution>
<id>default-cli</id>
<phase>pre-integration-test</phase>
<goals>
<goal>java</goal>
</goals>
<configuration>
<mainClass>com.zertificon.managementCenter.adminUi.server.WebApp</mainClass>
<!-- this does not work: -->
<classpath>${project.build.directory}/${libFolder}/</classpath>
</configuration>
</execution>
</executions>
</plugin>
我尝试运行的WebApp类源自另一个Project,并安装在本地存储库中。我会高度赞同任何帮助。
答案 0 :(得分:0)
发现错误:我一直在使用Jetty和Selenium Library,它本身也捆绑了Jetty。这导致错误的Jetty版本被加载,这给了我类未找到的错误。去图。