spring boot 版本:
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.3.RELEASE</version>
<relativePath />
</parent>
注意一个小问题:spring boot 2.0以上:配置文件参数:servlet.context-path 变成了:server.servlet.context-path
第一步:
在pom文件加入:
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<!--fork : 如果没有该项配置,肯定devtools不会起作用,即应用不会restart -->
<fork>true</fork>
</configuration>
</plugin>
</plugins>
右键项目:
结果发现build失败,一看错误信息,说我的jdk有问题,解决方法(指定jdk):
eclipse -- windows -- preferences - java--installed jres
指定jdk
然后项目 bulid path,指定刚刚添加的jdk
然后run maven install 成功打jar包!
在自己电脑上(windows) 执行 jara -jar xxxx.jar 启动没问题
问题:
1.关掉窗口,项目也关闭了
2.接收ibm mq消息中文乱码
解决乱码:转换成utf-8编码
xmlString = new String(bs,"UTF-8");
守护进程:
windows:
linux: nohup java -jar xxx.jar >mylog.log 2>&1 &
其中mylog.log记录控制台信息
补充: 2>&1
1.
& 1 更准确的说是文件描述符 1, 而1 一般代表的就是STDOUT_FILENO,实际上这个操作就是一个dup2(2)调用.他标准输出到all_result ,然后复制标准输出到文件描述符2(STDERR_FILENO),其后果就是文件描述符1和2指向同一个文件表项,也可以说错误的输出被合并了.其中0表示键盘输入 1表示屏幕输出 2表示错误输出.把标准出错重定向到标准输出,然后扔到/DEV/NULL下面去。通俗的说,就是把所有标准输出和标准出错都扔到垃圾桶里面。
2.
command >out.file 2>&1 &
command >out.file是将command的输出重定向到out.file文件,即输出内容不打印到屏幕上,而是输出到out.file文件中。2>&1 是将标准出错重定向到标准输出,这里的标准输出已经重定向到了out.file文件,即将标准出错也输出到out.file文件中。最后一个& , 是让该命令在后台执行