java - 如何在Intellij/Gradle中创建可运行的.jar文件

标签 java intellij-idea gradle jar

有人可以告诉我如何使用Intellij和Gradle在cmd中运行.jar文件吗?

我尝试创建 list 文件,但出现错误:

no main manifest attribute, in eureka-server.jar

要么
Error: Could not find or load main class com.project.EurekaServerApplication
Caused by: java.lang.ClassNotFoundException: com.project.EurekaServerApplication

我的主类:
package com.project;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;

@SpringBootApplication
@EnableEurekaServer
public class EurekaServerApplication {

    public static void main(String[] args) {
        SpringApplication.run(EurekaServerApplication.class, args);
    }
}

在MANIFEST.MF中的路径/ resources / META-INF中
Manifest-Version: 1.0
Main-Class: com.project.EurekaServerApplication

我也在build.gradle中尝试
jar {
    manifest {
        attributes(
                'Main-Class': 'com.project.EurekaServerApplication'
        )
    }
}

我以这种方式运行这个jar文件:
java -jar [nameApplication].jar

最佳答案

为了运行.jar文件,必须在gradle构建之后使其可执行(无论intellij如何),请在gradle文件中使用bootRepackage task:

bootRepackage {
  mainClass = 'com.project.EurekaServerApplication'
}

关于java - 如何在Intellij/Gradle中创建可运行的.jar文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47311991/

相关文章:

android - 库 - 未找到 ID 为 "com.android.library"的插件

gradle - Liferay中如何以模块化的方式使用第三方组件?

java - 如何用Java编写位排序程序?

android - 如何在 intellij android 项目中更改包名称?

deployment - 如何在 intellij 11 中设置本地谷歌应用程序服务器

java - IntelliJ 拒绝添加自定义组件

android - React-Native(Android)-任务 ':app:transformClassesWithMultidexlistForRelease'的执行失败

java - 无法将 Path 对象与 String 模式匹配

java - Android 中非 View 对象的动画

java - 使用 FileUtils.listFiles 递归查找目录