如何构建将执行 Maven 资源过滤的 Arquillian ShrinkWrap 部署?我应该使用哪个版本的 ShrinkWrap?
问问题
692 次
3 回答
1
根据来自 ShrinkWrap 开发人员https://community.jboss.org/message/781880#781880的信息,这尚未实现。
于 2013-05-09T07:19:47.570 回答
0
编辑:请参阅我的其他答案,这实际上已实现且易于使用;-)
Grzegorz 是正确的,这在 Arquillian 中没有实现。
作为一种解决方法,我在@Deployment 中得到了这个结果:
Properties testProperties = new Properties();
ClassLoader contextClassLoader = Thread.currentThread().getContextClassLoader();
InputStream testPropertiesInputStream = contextClassLoader.getResourceAsStream("test.properties");
testProperties.load(testPropertiesInputStream);
File testPropertiesTargetFile = File.createTempFile("arquillian_test_", ".properties");
try (Writer testPropertiesWriter = Files.newBufferedWriter(testPropertiesTargetFile.toPath())) {
testProperties.store(testPropertiesWriter, null);
}
webArchive.addAsResource(testPropertiesTargetFile, "test.properties");
这在@Setup 中:
private Properties testProperties;
@Before
public void setUp() throws IOException {
testProperties = new Properties();
InputStream testPropertiesInputStream = this.getClass().getResourceAsStream("/test.properties");
testProperties.load(testPropertiesInputStream);
}
于 2015-05-07T07:22:54.733 回答
0
在尝试“修复”它之后,事实证明答案很简单......
webArchive.addAsResource("test.properties");
... 将使用 maven 已经过滤的类路径资源。
于 2015-05-07T08:04:01.790 回答