如何构建将执行Maven资源过滤的Arquillian ShrinkWrap部署? 我应该使用哪个版本的ShrinkWrap?
答案 0 :(得分:1)
根据ShrinkWrap开发人员https://community.jboss.org/message/781880#781880提供的信息,这尚未实施。
答案 1 :(得分: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);
}
击> <击> 撞击>
答案 2 :(得分:0)
在尝试“修复”之后,事实证明答案非常简单......
webArchive.addAsResource("test.properties");
...将使用maven已经过滤的类路径资源。