java - 使用 Gradle 在 Tomee 上部署 CDI Beans 模块失败:无法启动 owb 上下文
问题描述
我有一个 Gradle 项目。构建运行正常,包括测试。但是当我只使用 Intellij Idea 运行测试时,测试会失败:
24-Nov-2020 07:10:59.129 SEVERE [http-nio-8080-exec-4] org.apache.openejb.cdi.OpenEJBLifecycle.startApplication CDI Beans module deployment failed
java.lang.NullPointerException
...
24-Nov-2020 07:10:59.130 SEVERE [http-nio-8080-exec-4] org.apache.tomee.catalina.TomcatWebAppBuilder.startInternal Unable to deploy collapsed ear in war StandardEngine[Catalina].StandardHost[localhost].StandardContext[/isugf_cross]
javax.enterprise.inject.spi.DeploymentException: couldn't start owb context
at org.apache.openejb.cdi.ThreadSingletonServiceImpl.initialize(ThreadSingletonServiceImpl.java:254)
at org.apache.openejb.cdi.CdiBuilder.build(CdiBuilder.java:43)
at org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:971)
at org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:759)
at org.apache.tomee.catalina.TomcatWebAppBuilder.startInternal(TomcatWebAppBuilder.java:1309)
at org.apache.tomee.catalina.TomcatWebAppBuilder.configureStart(TomcatWebAppBuilder.java:1131)
at org.apache.tomee.catalina.GlobalListenerSupport.lifecycleEvent(GlobalListenerSupport.java:134)
at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5044)
我的 build.gradle 看起来像:
plugins {
id 'java'
id 'war'
}
group 'uz.fido_biznes'
version '1.0-SNAPSHOT'
repositories {
mavenCentral()
}
sourceCompatibility = 1.8
targetCompatibility = 1.8
dependencies {
compileOnly('javax:javaee-web-api:7.0')
implementation fileTree(dir:'D:\\Husan\\projects_work\\FIDO_EXCHANGE\\userlib', include:'/**/*.jar')
testImplementation('org.testng:testng:7.1.0')
}
test {
useTestNG()
}
解决方案
推荐阅读
- cryptography - 我可以在 AES-GCM 中发送未加密的随机数吗?
- android - 如果用户第一次打开应用程序时没有获取动态链接,它会丢失吗?
- java - 为什么 Java 小程序已过时?
- android - android studio Gradle 同步失败:找不到构建工具修订版 28.0.2
- linux - 仅通过特定路径获取唯一文件名
- php - php file() 进入 foreach - 致命错误:无法中断/继续 1 级
- regex - 正则表达式匹配 ASCII 符号/数字
- r - 使用 randomForest 进行分类的代码格式
- matlab - MATLAB 中的滤波器扫描效果
- syntax - OCaml 匹配简写