windows启动java项目如何定义进程名字?

在windows下用java-jar xxx.jar启动要怎么自定义进程的名称啊?

阅读 4k
3 个回答

方法一

springboot 可以加上 <executable>true</executable>,这样打出来的包能够直接执行,但是实际上还是产生了两个进程,一个 shell 进程,一个 java 执行的子进程;杀掉 shell 进程一样能够停止。

该方法我没在 windows 测试过。

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

方法二

使用spring-native

不通过 jvm 执行,而是直接编译成可执行文件。

优点是启动快,性能高,消耗资源低。
缺点是构建慢,运行优化有一点不足但是我认为不影响使用。

能够完美的符合你的要求,但是这是一个较新的技术,使用起来可能有未知的风险。

方法三(linux 补充)

使用 aliasalias javareplace=java


目前除了上面方法外,没有其它方法了。

受邀了不好意思不回答,但这个以前真没有接触过了。
简单查了查,或许launch4j能够帮到你。

这个要修改javahome 下的java.exe名称。 如果修改成 java_test.exe 。启动命令变为
java_test -jar xxxx.jar 启动后的进程名则为java_test

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题