springboot开发过程中相关问题记录,供参考.
1. 打成jar部署
1)、配置端口号
server.port=8088
2)、C:\Users\figo>e:
E:\>cd E:\CompayProjects\TestSystem\Trunk\Test
E:\CompayProjects\TestSystem\Trunk\Test>mvn clean install –DskipTests
3)、启动:
加上& 后台关闭后,服务不会中断
java -jar Test-1.0.0.jar &
java -jar Test-1.0.0.war &
访问:
http://localhost:8088/Test/getUsers
4)、关闭进程
netstat -nlp|grep :8088
得到进程号
Kill -9 16077
参考
https://www.cnblogs.com/tuanz/p/11204971.html
5)、重启站点shell脚本startup.sh
#!/bin/bash
warname='test-0.0.1-SNAPSHOT'
pid=`ps aux | grep $warname | grep -v grep | awk '{print $2}'`
echo $pid
kill -9 $pid
java -jar $warname.war
nohup java -jar $warname.war >run.log &
tail -f run.log
2. 打成war
1)、application继承SpringBootServletInitializer
public class TestApplication extends SpringBootServletInitializer{
public static void main(String[] args) {
SpringApplication.run(TestApplication.class, args);
}
}
2)、打成war
Pom.xml里面
<packaging>jar</packaging>改成
<packaging>war</packaging>
3)、排除tomcat
1.排除spring-boot-starter-web中的Tomcat
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency>
或者添加依赖(推荐,上面那种方式打包会出现缺少javax相关servlet的包的错)
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<!--打包的时候可以不用包进去,别的设施会提供。事实上该依赖理论上可以参与编译,测试,运行等周期。
相当于compile,但是打包阶段做了exclude操作-->
<scope>provided</scope>
</dependency>
4)、部署到was或者tomcat,jboss等容器
Test.war放在
D:\apache-tomcat-9.0.21\webapps
访问:
http://localhost:9080/Test/getUsers
http://localhost:9080/Test/index
3. SpringBoot启动出现java.sql.SQLNonTransientConnectionException: CLIENT_PLUGIN_AUTH is required
使用mysql 5.1.71报上面的错
1)、Pom.xml里面降到5.1.37
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.37</version>
<scope>runtime</scope>
</dependency>
2)、另外application.properties
spring.datasource.test1.driver-class-name=com.mysql.cj.jdbc.Driver 改成
spring.datasource.tariff.driver-class-name=com.mysql.jdbc.Driver
4 .springboot线程池
https://www.jianshu.com/p/832f2b162450
https://blog.csdn.net/u011677147/article/details/80271174
https://blog.csdn.net/z3133464733/article/details/79189699
5.添加第三方Jar到本地mvn仓库
1、环境变量添加:
MAVEN_HOME:(maven位置)
M2_HOME:(maven位置)
PATH:%M2_HOME%\bin
(验证maven是否配置成功cmd-->maven -version)
2、跳转到jar所在文件夹执行命令行,当然得事先配置mvn环境变量
C:\Users\figo>e:
E:\>cd E:\test\jar
E:\test\jar>mvn install:install-file -DgroupId=com.figo.util.log -DartifactId=MonitorLogger -Dversion=1.0 -Dpackaging=jar -Dfile=monitor-logger.jar
对应关系
<dependency>
<groupId>com.figo.util.log</groupId>
<artifactId>MonitorLogger</artifactId>
<version>1.0</version>
</dependency>
6. springBoot 打成jar包 无法访问jsp文件
出现这类错:There was an unexpected error (type=Not Found, status=404).
网上说的可以将springBoot降级到1.4之类的方法
我偷懒不想降级 在pom文件中添加
<packaging>war</packaging>
然后打成war包 同样用 java -jar xxx.war 方式启动即可访问jsp文件
未完待续。。。