Travis使用Ubuntu Trusty和默认的libc ++版本svn199600.
但是,我想测试不同的(较新的)版本,因为我已经使用不同的clang版本.
我目前的情况.travis.yml如下:
language: generic
dist: trusty
sudo: required
matrix:
include:
- env: CXX=g++-7 CC=gcc-7
addons:
apt:
packages:
- g++-7
sources: &sources
- ubuntu-toolchain-r-test
- llvm-toolchain-precise
- llvm-toolchain-precise-3.9
- llvm-toolchain-precise-3.8
- llvm-toolchain-precise-3.7
- llvm-toolchain-precise-3.6
- sourceline: 'deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty-4.0 main'
key_url: 'http://apt.llvm.org/llvm-snapshot.gpg.key'
- env: CXX=g++-6 CC=gcc-6
addons:
apt:
packages:
- g++-6
sources: *sources
- env: CXX=g++-5 CC=gcc-5
addons:
apt:
packages:
- g++-5
sources: *sources
- env: CXX=g++-4.9 CC=gcc-4.9
addons:
apt:
packages:
- g++-4.9
sources: …Run Code Online (Sandbox Code Playgroud) 我使用 Deltaspike CdiControl 为我的单元测试启动 CDI 容器。这工作正常,但有一个问题:如果我对 Maven Web 应用程序使用这种方法,beans.xml最终会在src/main/webapp/WEB-INF. 这意味着META-INF在单元测试期间它不在目标文件夹中的目录中。
由于单元测试本身不是webappJava SE 运行,因此该WEB-INF目录被忽略。我可以通过添加第二解决这个问题beans.xml,以META-INF和/或复制现有beans.xml向右文件夹单元测试。但这意味着我必须手动将其从战争中排除,因此它看起来有点不切实际。
把一个beans.xml成src/test/resources/META-INF不起作用,因为它仅允许在CDI组件target/test-classes被检测到。
这似乎是一个普遍的问题,我认为之前一定有人遇到过这个问题?或者每个人都有一个单独的 Maven 模块用于组件和/或单元测试?