Jeb*_*tin 5 talend spring-boot spring-boot-test
我们有一个应用程序,它对外部jar有运行时依赖性(例如在Spring-boot中运行的Talend作业).现在我们可以使用-Dloader.path参数从Spring-Boot启动它.但是,我们无法使用外部lib文件夹运行集成测试(即从Spring-Boot Test启动Talend作业).是否可以使用SpringBoot测试为集成测试加载外部作业?
我把这个整理好了。
Intellij -> 选择模块 -> 打开模块设置 -> 依赖项 -> 添加依赖项 -> 选择外部 jar -> 范围仅用于测试。
这样,它对于测试用例来说工作得很好,同时没有在实际的主代码中使用。
罐子该放在哪里?
考虑到它将在测试用例中使用,我建议将 jar 提交到 src/test/lib 中,并在添加依赖项时选择此路径。
如果您在存储库中提交相同的文件,Intellij 会生成 .iml 文件(其中包含依赖项列表),然后其他团队成员可以轻松使用,无需任何进一步的设置。
现在问题仍然是 linux env 或 CIT 环境。我认为我们可以通过 CLASSPATH env 变量添加这个 jar,然后启动任何 CIT 作业。
混合解决方案,但它按我的预期工作。
另一种解决方案: 在本地存储库中安装外部 jar,并在 pom.xml 中添加具有测试范围的依赖项。这是一个简单的选择。
在本地存储库上安装 jar :
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-install-plugin</artifactId>
<version>3.0.0-M1</version>
<executions>
<execution>
<id>install-jar</id>
<phase>initialize</phase>
<goals>
<goal>install-file</goal>
</goals>
<configuration>
<file>${project.basedir}/src/test/lib/somejar-1.0.jar</file>
<groupId>com.beta.gamma</groupId>
<artifactId>somejar</artifactId>
<version>1.0</version>
<packaging>jar</packaging>
</configuration>
</execution>
<executions>
</plugin>
Run Code Online (Sandbox Code Playgroud)
现在可以像其他依赖项一样添加为依赖项。这将适用于环境。
| 归档时间: |
|
| 查看次数: |
324 次 |
| 最近记录: |