Spring Boot Maven可执行jar无法与双击一起运行

时间:2018-08-01 12:17:32

标签: spring maven spring-boot

创建了一个简单的Spring Boot应用程序的Maven jar。 如果我尝试使用java -jar x.jar从命令行执行jar文件,并且该文件运行正常,甚至还会看到spring boot..booting up ..

的所有痕迹。

如果仅通过用鼠标双击执行它,它将无法运行。一个命令窗口会弹出一毫秒,然后消失,如果我尝试访问暴露的终结点(HTTP Rest-Get),则无法到达该站点。

该项目是Eureka服务器示例,因此包含云依赖项。

任何想法都可能是问题所在,仅仅是某些环境设置吗?!

此致

从POM:

    <groupId>example.demo</groupId>
    <artifactId>EurekaServiceDiscovery</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>jar</packaging>
.
.
.
.
<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.0.3.RELEASE</version>
    <relativePath/> <!-- lookup parent from repository -->
</parent>
.
.
<build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
    </plugins>
</build>

Spring Eureka基本示例,除以下之外几乎没有任何代码

@EnableEurekaServer
@SpringBootApplication
public class EurekaServiceApplication {

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

2 个答案:

答案 0 :(得分:0)

您遵循了吗? https://docs.spring.io/spring-boot/docs/current/reference/html/deployment-install.html

  

要使用Maven创建“完全可执行”的jar,请使用以下插件配置:

<plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
    <configuration>
        <executable>true</executable>
    </configuration>
</plugin>
  

以下示例显示了等效的Gradle配置:

bootJar {
    launchScript()
}
  

然后您可以通过键入./my-application.jar(其中my-application是工件的名称)来运行您的应用程序。包含jar的目录用作应用程序的工作目录。

答案 1 :(得分:0)

完全没有问题
jar 上双击并执行命令并不相同

java -jar x.jar

从eclipse或从命令提示符执行。
其他更改Windows(操作系统)设置或更改Maven配置中的执行设置以从命令提示符下执行