说明:
我这里演示的只是本地开发的Java程序发布到本地站点的脚本。需求是我本地想搭建一个Java的网站,做一些本地数据的处理。不想每次都开idea去启动工程。然后本地网站更新,没有批处理的情况下,正常做法是拷贝target目录下的jar文件到网站对应的目录下,然后java -jar执行。没有批处理,效率不高。
索性,研究了一下bat脚本的写法。
不过有个瑕疵,我没研究出怎么杀原先的java进程,关闭网站只能用关闭cmd窗口的方式实现关闭。(我脚本没有写后台执行的方法,仅供参考)
先上图:
最后,上脚本
@echo off
: 变量之间不能有空格
set jarName=uni-user-devweb-0.0.1-SNAPSHOT.jar
set jarDir=C:\webapp\zx\main-web\web
set jarFile=%jarDir%\%jarName%
set soureJarFile=C:\Projects\zx\uni-user-devweb\code\uni-user-devweb\target\uni-user-devweb-0.0.1-SNAPSHOT.jar
set javaExeName=C:\Program Files\Java\jdk-1.8\bin\java.exe
: 启动的配置项
set profilesActive=hp8087
if exist %jarFile% (
echo delete %jarFile%
del %jarFile%
)
echo copy %soureJarFile% %jarFile%
copy %soureJarFile% %jarFile%
echo %javaExeName% -Xms256m -Xmx2048m -jar -Dfile.encoding=utf-8 -Dspring.profiles.active=%profilesActive% %jarFile%
"%javaExeName%" -Xms256m -Xmx2048m -jar -Dfile.encoding=utf-8 -Dspring.profiles.active=%profilesActive% %jarFile%