jakarta-ee - Gradle初始化删除了外部库

标签 jakarta-ee gradle intellij-idea glassfish

我创建一个新项目。

新建项目> Java Enterprise> Web应用程序,然后选择JSF,选择我的GlassFish安装。

Before

当我按下播放按钮时,它会起作用(带有“Hello world”的白页)。但是我不想添加gradle,所以我可以安装依赖项。

在我运行gradle init并重新打开Intellij之后,我的外部库不见了...

如何将GlassFish库与gradle结合使用?

在我的build.gradle中添加了compileOnly group: 'javax', name: 'javaee-api', version: '8.0',仍然出现如下错误

enter image description here

最佳答案

原因是Intellij将这些外部库添加到IDEA项目中,因此Gradle不了解它们。您需要向Gradle添加依赖项,以便Gradle和IDEA都将了解依赖项。

由于要部署到GlassFish 5,因此可以在Java EE 8 API上添加提供的依赖项,如下所示:

provided group: 'javax', name: 'javaee-api', version: '8.0'

这告诉Gradle(和IDE)可以根据API编译代码,但是实际上没有包括任何实现库,因为当您部署到GlassFish时它们已经存在。

关于jakarta-ee - Gradle初始化删除了外部库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48685300/

相关文章:

jakarta-ee - 在哪里可以找到 com.ibm.websphere.asynchbeans.Work 的相关 .jar 文件?

java - 使用对象作为数组时出现空指针异常

java - Intellij IDEA - 如何查找项目中的包使用情况

java - Intellij IDEA,格式化一个项目中的所有代码

java - 条件依赖

javascript - 在 IntelliJ IDEA 中运行 Jest 测试

java - 在 Akka、Twitter Finagle 和 Vert.x 之间选择优缺点或 EJB 仍然足够

java - 如何为 EJB 选择本地接口(interface)?

android - 如何将 Android Studio 默认 gradle JDK 更改为 11

java - 在Android Studio中生成失败