使用Gradle的Java项目和在Intellij IDEA中构建jar文件 - 如何操作?

Def*_*ozo 12 java jar intellij-idea java-ee gradle

有没有关于如何使用Gradle创建Java项目然后构建jar文件的教程?

我遇到了各种各样的问题.当我创建Java项目然后添加Gradle with File - > New - > Module - > Gradle - > ...然后我得到一些关于Java EE websocket的错误(我使用的是Ultimate Edition)但是没关系,我通过选择文件 - >新建 - >项目... - > Gradle - >来设法创建该项目...现在我的Gradle正常工作的Java项目(我可以在IDE中调试)但是当我尝试创建时一个工件(jar文件)我得到各种错误取决于我在项目结构设置中搞砸了多少...

Buildfile: build.xml does not exist!
Build failed
Run Code Online (Sandbox Code Playgroud)

要么

Error: Could not find or load main class Main
Run Code Online (Sandbox Code Playgroud)

我认为这个项目现在是如此混乱,最好的解决方案是创建另一个新项目,只需将Main.class和Gradle的依赖项复制到这个新项目中.

但是如何正确地做到这一点?

Voj*_*cka 26

  1. 创建新的Gradle(而不是Java)项目.务必在对话框中选择Java选项.点击下一步. 在此输入图像描述

  1. 填写GroupId,ArtifactId和版本 在此输入图像描述

  1. 选择您的gradle分布.您可以安全地使用推荐选项. 在此输入图像描述

  1. 选择项目名称和位置 在此输入图像描述

  1. 点击完成

  1. 你把你的java类放到src/main/java文件夹中.使用第三方库时,请确保将它们声明为Gradle依赖项. 在此输入图像描述

  1. 您可以使用Gradle选项卡→任务→构建(双击)来构建源 在此输入图像描述

  1. 您可以在"运行"选项卡中查看构建的结果 在此输入图像描述

  1. 如果出现错误,您可以通过单击以下按钮查看详细信息: 在此输入图像描述

  • 好吧!构建成功!现在,我的 .jar 文件在哪里?它在 <project>/build/libs 中吗?我可以看到有一个 jar 文件,但它的大小只有 7 KB。 (2认同)

Pol*_*lar 5

只是为了避免您遇到no main manifest attribute可执行Jar文件未运行的问题,请执行以下操作。

1:转到,build.gradle然后在底部添加以下内容。

jar {
    manifest {
        attributes 'Main-Class': 'your_package_name.YOUR_MAIN_CLASS'
    }
    from { configurations.compile.collect { it.isDirectory() ? it : zipTree(it) } }
}
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

  1. View> Tool Windows>Gradle

在此处输入图片说明

  1. 将在右侧显示一个面板,现在单击以build执行更多任务。在build任务下,双击build选项,然后等待任务完成。

在此处输入图片说明

  1. 现在,转到您的项目目录并打开build> libs,然后可执行Jar文件就在其中。

我不确定这是否正确。
无需接受是否可行,希望这对其他人有所帮助。