使用Eclipse对SpringBoot项目如何进行打包部署
1,打包概要介绍:
自己做了个小demo,突然想练一下如何打包发布,期间出现了两个错误,第一个是加载不到主类,第二个是加载不到jsp文件,一会会把这两个问题一一陈述,以及解决方法。
1.1,先检查pom文件
因为springboot的项目打包的话他是根据pom.xml文件进行打包的,注意:(仔细观看我写的注释,加载不到jsp文件那你还要回头再看)
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.example.demo</groupId>
<artifactId>stores-erp</artifactId>
<version>0.0.1-SNAPSHOT</version>
<!-- 这边要改成我们jar 因为我们要大jar包 假如是war包的话就写成war -->
<packaging>jar</packaging>
<name>stores-erp</name>
<description>stores-erp</description> <parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.18.RELEASE</version>
<relativePath /> <!-- lookup parent from repository -->
</parent> <properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties> <dependencies>
<dependency>
<groupId>cglib</groupId>
<artifactId>cglib</artifactId>
<version>3.2.5</version>
</dependency>
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.2.5</version>
</dependency>
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
</dependency>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.2</version>
</dependency> <dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<!-- springboot工具 修改代码后不需重启即生效 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>springloaded</artifactId>
</dependency>
<!-- 文件上传 -->
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.3.2</version>
</dependency>
</dependencies>
<build>
<!-- 注意最下面的build这块一定要配置否则打jar的时候会说找不 到主类 -->
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<!-- 注意:记住啊 下面<version>1.4.2.RELEASE</version>
这行代码是必须要加的不加的话就全GG了,因为springboot打包有个bug
反正这行代码别忘了加
-->
<version>1.4.2.RELEASE</version>
<configuration>
<mainClass>com.example.demo.SpringBootDay02Application</mainClass>
</configuration>
</plugin>
</plugins>
<!--这里进行配置,后会自动的加载src/main/webapp下的所有文件 :配置Maven 对resource文件 过滤 -->
<!-- 我之前遇见的jsp找不到的问题 就是因为没有配置好以下的文件所以才会加载不到jsp配置文件 -->
<resources>
<resource>
<directory>src/main/webapp</directory>
<targetPath>META-INF/resources</targetPath>
<includes>
<include>**/**</include>
</includes>
</resource>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
</build>
</project>
1.2,pom.xml中需要注意的地方
注意pom.xml最下面的build这块一定要配置否则打jar的时候会说找不到主类(我标红的地方则是Springboot的启动类路径,咱们的路径肯定不一样修改一下哈)

1.3,启动类代码修改
在启动类当中加上继承 SpringBootServletInitializer类并重写configure方法,这是为了打包springboot项目用的(不是单单实现就完事了,有些代码还需要修改一下,仔细点)
package com.example.demo; import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.support.SpringBootServletInitializer; @SpringBootApplication
public class SpringBootDay02Application extends SpringBootServletInitializer{ public static void main(String[] args) {
SpringApplication.run(SpringBootDay02Application.class, args);
}
//为springboot打包项目用的
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
// TODO Auto-generated method stub
return builder.sources(this.getClass());
}
}
1.4,application.properties文件检查
代码大致不需要修改,就是检查各个应用连接之类的,假如在虚拟机上部署的话则需要进行一些修改,端口号啊,环境配置连接等等
server.port=8080
server.servlet.context-path=/
debug=false spring.datasource.url=jdbc:mysql://localhost:3306/stores-erp?characterEncoding=utf8&useSSL=false&serverTimezone=UTC&rewriteBatchedStatements=true
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.username=root
spring.datasource.password=321 spring.mvc.view.prefix=/WEB-INF/jsp/
spring.mvc.view.suffix=.jsp mybatis.config-location=classpath:mybatis/mybatis-config.xml
mybatis.mapper-locations=classpath:mybatis/mappers/*/*.xml
mybatis.type-aliases-package=com.example.demo.pojo
2.1,第一步,
点击项目右键,Run As=》Maven Clean进行项目刷新

2.2,第二步,
Run As=》Maven insert进行项目打包,假如成功的话则出现以下页面信息:

2.3,第三步,
我们找到项目中的target文件就可以看到我们的jar包文件等等了。

2.4,第四步,
你可以选择直接把stores-erp-0.01-SNAPSHOT.jar拷贝出去,也可以直接去他目录下找它,我选择的是找到项目中的jar文件的所在地址,在导航栏输入cmd。

2.5,第五步,
启动jar包项目,注意:我之前做的时候这边出了个错误,就是加载不到主类等等,是个非常操蛋的错误就是因为少加了个 - 这个坑我提你们踩了- -.(这个执行方式windows和linux上都一样)

3,然后就可以进行访问了效果如下:

使用Eclipse对SpringBoot项目如何进行打包部署的更多相关文章
- SpringBoot项目如何进行打包部署
springboot的打包方式有很多种.有打成war的,有打成jar的,也有直接提交到github,通过jekins进行打包部署的.这里主要介绍如何打成jar进行部署.不推荐用war,因为spring ...
- eclipse 创建springboot项目
eclipse创建springboot项目的三种方法: 引自:https://blog.csdn.net/mousede/article/details/81285693
- SpringBoot使用Maven插件打包部署
[问题] 之前一直用SpringBoot做一些小项目,想打包部署在环境上,总是少依赖包jar.百度下可以通过Spring Boot Maven plugin插件,把Maven配置的依赖包都打到项目包里 ...
- 用eclipse发布springboot项目
使用eclipse打包springboot项目时一直报错 [ERROR] No compiler is provided in this environment. Perhaps you are ru ...
- SpringBoot项目搭建与打包
一.环境准备 本地java环境jdk1.8 Maven版本3.5.2 IDE工具idea2017 二.SpringBoot微服务搭建 1.点击File >> New >> Pr ...
- 使用Eclipse创建SpringBoot项目
1 首先我们需要安装STS插件:Help--> Eclipse Marketplace 安装成功之后,会让你重启eclipse. 2 然后 File-->New--->Proje ...
- eclipse 运行springboot项目
一:当在eclipse启动spring boot项目时出现问题: 错误: 找不到或无法加载主类 com.example.demo.DemoApplication 解决办法: 1,通过cmd命令行,进入 ...
- maven+springboot项目使用idea打包
首先简单了解一下maven: 概述 日常开发中,我们用到的maven相关功能大概以下几种: 1. 管理jar依赖 2. 构建项目(打包.编译等) 3. 发布项目(共享.上传至服务器,供他人使用) 简单 ...
- (A)eclipse搭建springboot项目入门
网上许多资料都是用idea的,但是我个人用eclipse习惯了,所以就在eclipse里面自己尝试着写了一个hello. 然而项目建好后却迟迟不能访问!!!网上搜了许多资料都不靠谱! 虽然最后能看到h ...
随机推荐
- mysql的unsigned属性负值报错和为0情况及mysql的严格模式
最近发现在进行线程操作时,发现数据库的unsigned字段减为负数时并未报错而是变为0,因此去寻找解决方案,发现这和我的sql_mode有关. sql_mode MySQL服务器可以以不同的SQL模式 ...
- eclipse开发scrapy爬虫工程,附爬虫临门级教程
写在前面 自学爬虫入门之后感觉应该将自己的学习过程整理一下,也为了留个纪念吧. scrapy环境的配置还请自行百度,其实也不难(仅针对windows系统,centos配置了两天,直到现在都没整明白) ...
- C# 直播录制视频
//项目引用 ffmpeg.exe 下载地址http://ffmpeg.org/ var time = DateTime.Now; ; //录制分钟 var fileName = Guid.NewGu ...
- PAT乙级1044
题目链接 https://pintia.cn/problem-sets/994805260223102976/problems/994805279328157696 题解 需要注意的几个点: 题目有指 ...
- Spring Bean装配(上)
Bean:在spring的IOC里面,把配置到IOC容器里面的实体或者是对象都称为Bean Bean配置项 Bean的作用域 Bean的生命周期 Bean的自动装配 Resources&Res ...
- python_反射:动态导入模块
官方推荐方法: test_mod.py def hi(): print('Hi') test.py import importlib q = importlib.import_module('test ...
- 老式浏览器支持html5与css3
html5低版本浏览器兼容方式 <!--[if IE]> <script src=”http://apps.bdimg.com/libs/html5shiv/3.7/html5s ...
- Luogu SP839 OPTM - Optimal Marks(按位最小割)
这道题和 BZOJ 2400 是一道题,不多讲了 CODE #include <cstdio> #include <cstring> #include <vector&g ...
- Appium自动化测试教程-自学网-monkey简介
Monkey简介 在Android的官方自动化测试领域有一只非常著名的“猴子”叫Monkey,这只“猴子”一旦启动,就会让被测的Android应用程序像猴子一样活蹦乱跳,到处乱跑.人们常用这只“猴子” ...
- CAZAC序列
定义: CAZAC(Const Amplitude Zero Auto-Corelation),即为恒包络零自相关序列. 性质: 1,恒包络特性:任意长度的CAZAC序列幅值恒定. 2,理想的周期自相 ...