环境搭建、部署运行、修改包名、正式部署
开发环境要求
1、Java SDK 1.8 下载
2、Apache Maven 3.3.0、3.6.0 下载
3、Eclipse IDE for Java EE Mars 2 (4.5.2) 下载、或 IntelliJ IDEA 下载
4、MySql 5.7.11+ 下载(Oracle、PostgreSQL、Sql Server 操作类似)
导入到 Eclipse 或 IDEA
1、检出 JeeSite4.x 源代码:
git clone https://gitee.com/thinkgem/jeesite4.git
2、拷贝web
文件夹,到你的工作目录(不包含中文和空格的目录)下,重命名为你的工程名,如:jeesite-demo
3、打开pom.xml
文件,修改第13行,artifactId为你的工程名,如:<artifactId>jeesite-demo</artifactId>
4、导入到 Eclipse,菜单 File -> Import,然后选择 Maven -> Existing Maven Projects,点击 Next> 按钮,选择第2步的jeesite-demo
文件夹,然后点击 Finish 按钮,即可成功导入
5、若 IDEA,点击 Import Project,选择 pom.xml
文件(若包含所有源码包,你需要选择 jeesite/root/pom.xml
文件),点击 Next 按钮,选择 Import Maven projects automatically
复选框,然后一直点击 Next 按钮,直到点击 Finish 按钮,即可成功导入
6、这时,Eclipse(IDEA)会自动加载 Maven 依赖包,初次加载会比较慢(根据自身网络情况而定,目前使用国外Maven仓库地址,购买授权提供国内私服地址),若工程上有小叉号,请打开 Problems 窗口,查看具体错误内容,直到无错误为止
7、下载依赖jar文件的过程中,你可以准备数据库环境了
若在部署过程中遇见问题,请在“常见问题”中找找,看看有没有和你相同的问题
初始化数据库
1、以 MySql 为例
1)打开 my.ini 给 [mysqld] 增加如下配置:
sql_mode="ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
2)如果遇到 ERROR 1709 (HY000): Index column size too large. The maximum column size is 767 bytes. 错误
a)打开 my.ini 给 [mysqld] 增加如下配置:
innodb_large_prefix = ON
innodb_file_format = Barracuda
innodb_file_per_table = ON
b)并修改报错的建表语句后面加上:ENGINE=InnoDB row_format=DYNAMIC;
# 若没有修改my.ini的权限也可以使用命令查看参数和设置参数:
show global variables like "innodb_large_prefix";
show global variables like "innodb_file_format";
show global variables like "innodb_file_per_table";
set global innodb_large_prefix=ON;
set global innodb_file_format=Barracuda;
set global innodb_file_per_table=ON;
2、 创建用户和授权
set global read_only=0;
set global optimizer_switch='derived_merge=off';
create user 'jeesite'@'%' identified by 'jeesite';
create database jeesite DEFAULT CHARSET 'utf8' COLLATE 'utf8_unicode_ci';
grant all privileges on jeesite.* to 'jeesite'@'%' identified by 'jeesite';
flush privileges;
3、 打开文件 /src/main/resources/config/application.yml
(v4.0.x:/src/main/resources/config/jeesite.yml
) 配置产品和项目名称及JDBC连接
# 产品或项目名称、软件开发公司名称
productName: JeeSite Demo
companyName: ThinkGem
# 产品版本、版权年份
productVersion: V4.1
copyrightYear: 2018
# 数据库连接
jdbc:
# Mysql 数据库配置
type: mysql
driver: com.mysql.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/jeesite?useSSL=false&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull
username: jeesite
password: jeesite
testSql: SELECT 1
4、若刚才导入到的 Eclipse(IDEA) 的项目已经完成加载 jar 并无错误,这时你就可以执行/bin/init-data.bat(.sh)
脚本初始化数据库了,第一次执行如果遇见table xxx doesn't exist
的错误信息,忽略即可。
5、若在初始化每一行语句的都报事务相关的错,请检查设置jdbc.jta.enabled=false
是否关闭后,再尝试导入。
6、如果/bin/init-data.bat(.sh)
无法运行,你可以在 Eclipse 里找到com.jeesite.test.InitCoreData.java
文件并打开,然后在空白处右键,点击 Run As -> JUnit Test 运行单元测试,进行初始化数据库脚本。为了防止误操作,你还需要:打开 Run Configurations 找到 Arguments 选项卡,在 VM arguments 里增加 “-Djeesite.initdata=true” 参数,点击Run运行,执行完成后建议将该单元测试 Run Configuration 删除掉,防止误操作,不小心再把你的有用数据清理掉(IDEA 雷同)。
启动Tomcat服务
1、当前是 Spring Boot 工程,内部已经集成 Web 容器,你无需另外再下载 Tomcat 进行部署,只需按照以下方式进行即可。
2、打开/src/main/resources/config/application.yml
文件,配置你的服务端口port
、部署路径context-path
,例如:
server:
port: 8980
servlet:
context-path: /jeesite-demo
tomcat:
uri-encoding: UTF-8
v4.0.x:
server:
port: 8980
context-path: /jeesite-demo
tomcat:
uri-encoding: UTF-8
3、在 Eclipse 里找到com.jeesite.modules.Application.java
(v4.0.x:com.jeesite.modules.config.Application.java
)文件并打开,然后在空白处右键,点击 Debug As -> Java Application 即可启动服务。
4、若 IDEA,找到右上角 Application 运行配置,点击 Debug Application 图标。若启动的时候提示NoClassDefFoundError: javax/servlet/ServletOutputStream
错误,你只需要修改 web 项目下的 pom.xml,注释掉spring-boot-starter-tomcat
的<scope>provided</scope>
即可。
5、注意使用 Debug 运行,有助于你调试程序和提升开发效率,如:修改方法内的代码,修改视图代码,修改mapper代码,是不需要重启Web服务的。如果改变java类的结构,如果增删属性、方法、参数等,新增文件,这是就需要重启服务。
浏览器访问
1、地址:http://127.0.0.1:8980/jeesite-demo
2、默认最高管理员账号:system 密码:admin
3、这时已经配置完成,开启你的开发之旅吧
清理Demo数据
为了演示方法,初始化数据库后会载入一些演示数据,执行以下脚本即可清理
DELETE FROM js_sys_post;
DELETE FROM js_sys_office;
DELETE FROM js_sys_company;
DELETE FROM js_sys_employee;
DELETE FROM js_sys_employee_post;
DELETE FROM js_sys_role WHERE role_code NOT IN ('corpAdmin','default');
DELETE FROM js_sys_role_data_scope;
DELETE FROM js_sys_user WHERE user_code NOT IN ('system','admin');
DELETE FROM js_sys_user_data_scope;
DELETE FROM js_sys_user_role;
DELETE FROM js_sys_log;
使用自己的package包路径
1、Application.java
的 @SpringBootApplication(scanBasePackages="包路径")
增加你的包路径
2、application.yml
中找到 mybatis: scanBasePackage:
增加你的包路径,用逗号隔开
3、默认代码生成包路径修改:菜单系统设置->参数设置
的gen.defaultPackageName
为你的包名
4、打开 logback-spring.xml
,配置日志级别 <logger name="包路径" level="DEBUG" />
5、完成
部署到正式服务器
1、确保正式服务器jdk1.8
及数据库
环境已经具备
2、配置系统环境变量JAVA_HOME
指定jdk1.8
路径,注意不要包含空格
3、执行bin/package.bat(.sh)
进行打成war
包文件,并将此war拷贝到服务器上
4、进行解压war
包,配置yml
相关参数,运行/WEB-INF/startup.bat(.sh)
脚本
5、若需修改jvm
参数,编辑startup.bat(.sh)
修改JAVA_OPTS
参数优化jvm
环境
6、支持启动参数增加-Dspring.config.location=x:/app.yml
加载指定配置文件
7、若需要配置环境,则指定-Dspring.profiles.active=dev
,则加载application-dev.yml
属性文件