diff --git a/pom.xml b/pom.xml
index 960e29d4..acb61f8e 100644
--- a/pom.xml
+++ b/pom.xml
@@ -46,12 +46,6 @@
19.3.0.0
-
-
-
-
-
-
GNU General Public License version 3
@@ -74,26 +68,30 @@
-
+
+
+
+
+ org.apache.maven.plugins
+ maven-source-plugin
+ ${maven-source-plugin.version}
+
+
+ package
+
+ jar-no-fork
+
+
+
+
+
+
+
release
-
-
- org.apache.maven.plugins
- maven-source-plugin
- ${maven-source-plugin.version}
-
-
- package
-
- jar-no-fork
-
-
-
-
org.apache.maven.plugins
diff --git a/xxl-job-admin/src/main/java/com/xxl/job/admin/XxlJobAdminApplication.java b/xxl-job-admin/src/main/java/com/xxl/job/admin/XxlJobAdminApplication.java
index fce10a81..179fb134 100644
--- a/xxl-job-admin/src/main/java/com/xxl/job/admin/XxlJobAdminApplication.java
+++ b/xxl-job-admin/src/main/java/com/xxl/job/admin/XxlJobAdminApplication.java
@@ -6,7 +6,7 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
/**
* @author xuxueli 2018-10-28 00:38:13
*/
-@SpringBootApplication
+@SpringBootApplication(scanBasePackages = {"com.xxl.job.admin", "com.desuo"})
public class XxlJobAdminApplication {
public static void main(String[] args) {
diff --git a/xxl-job-admin/src/main/java/com/xxl/job/admin/config/executor/XxlJobExecutorConfig.java b/xxl-job-admin/src/main/java/com/xxl/job/admin/config/executor/XxlJobExecutorConfig.java
new file mode 100644
index 00000000..67306dc1
--- /dev/null
+++ b/xxl-job-admin/src/main/java/com/xxl/job/admin/config/executor/XxlJobExecutorConfig.java
@@ -0,0 +1,78 @@
+package com.xxl.job.admin.config.executor;
+
+import com.xxl.job.core.executor.impl.XxlJobSpringExecutor;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+
+/**
+ * xxl-job config
+ *
+ * @author xuxueli 2017-04-28
+ */
+@Configuration
+public class XxlJobExecutorConfig {
+ private Logger logger = LoggerFactory.getLogger(XxlJobExecutorConfig.class);
+
+ @Value("${xxl.job.admin.addresses}")
+ private String adminAddresses;
+
+ @Value("${xxl.job.accessToken}")
+ private String accessToken;
+
+ @Value("${xxl.job.executor.appname}")
+ private String appname;
+
+ @Value("${xxl.job.executor.address}")
+ private String address;
+
+ @Value("${xxl.job.executor.ip}")
+ private String ip;
+
+ @Value("${xxl.job.executor.port}")
+ private int port;
+
+ @Value("${xxl.job.executor.logpath}")
+ private String logPath;
+
+ @Value("${xxl.job.executor.logretentiondays}")
+ private int logRetentionDays;
+
+
+ @Bean
+ public XxlJobSpringExecutor xxlJobExecutor() {
+ logger.info(">>>>>>>>>>> xxl-job config init.");
+ XxlJobSpringExecutor xxlJobSpringExecutor = new XxlJobSpringExecutor();
+ xxlJobSpringExecutor.setAdminAddresses(adminAddresses);
+ xxlJobSpringExecutor.setAppname(appname);
+ xxlJobSpringExecutor.setAddress(address);
+ xxlJobSpringExecutor.setIp(ip);
+ xxlJobSpringExecutor.setPort(port);
+ xxlJobSpringExecutor.setAccessToken(accessToken);
+ xxlJobSpringExecutor.setLogPath(logPath);
+ xxlJobSpringExecutor.setLogRetentionDays(logRetentionDays);
+
+ return xxlJobSpringExecutor;
+ }
+
+ /**
+ * 针对多网卡、容器内部署等情况,可借助 "spring-cloud-commons" 提供的 "InetUtils" 组件灵活定制注册IP;
+ *
+ * 1、引入依赖:
+ *
+ * org.springframework.cloud
+ * spring-cloud-commons
+ * ${version}
+ *
+ *
+ * 2、配置文件,或者容器启动变量
+ * spring.cloud.inetutils.preferred-networks: 'xxx.xxx.xxx.'
+ *
+ * 3、获取IP
+ * String ip_ = inetUtils.findFirstNonLoopbackHostInfo().getIpAddress();
+ */
+
+
+}
\ No newline at end of file
diff --git a/xxl-job-admin/src/main/java/com/xxl/job/admin/controller/interceptor/PermissionInterceptor.java b/xxl-job-admin/src/main/java/com/xxl/job/admin/controller/interceptor/PermissionInterceptor.java
index ecb28114..29b36fbf 100644
--- a/xxl-job-admin/src/main/java/com/xxl/job/admin/controller/interceptor/PermissionInterceptor.java
+++ b/xxl-job-admin/src/main/java/com/xxl/job/admin/controller/interceptor/PermissionInterceptor.java
@@ -4,6 +4,7 @@ import com.xxl.job.admin.controller.annotation.PermissionLimit;
import com.xxl.job.admin.core.model.XxlJobUser;
import com.xxl.job.admin.core.util.I18nUtil;
import com.xxl.job.admin.service.LoginService;
+import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
import org.springframework.web.method.HandlerMethod;
import org.springframework.web.servlet.AsyncHandlerInterceptor;
@@ -20,13 +21,16 @@ import javax.servlet.http.HttpServletResponse;
@Component
public class PermissionInterceptor implements AsyncHandlerInterceptor {
+ @Value("${xxl.job.admin.permissionEnable:true}")
+ private boolean permissionEnable;
+
@Resource
private LoginService loginService;
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
- if (!(handler instanceof HandlerMethod)) {
+ if (!permissionEnable || !(handler instanceof HandlerMethod)) {
return true; // proceed with the next interceptor
}
diff --git a/xxl-job-admin/src/main/resources/application.properties b/xxl-job-admin/src/main/resources/application.properties
deleted file mode 100644
index 2e3298a6..00000000
--- a/xxl-job-admin/src/main/resources/application.properties
+++ /dev/null
@@ -1,75 +0,0 @@
-### web
-server.port=8080
-server.servlet.context-path=/xxl-job-admin
-
-### actuator
-management.server.servlet.context-path=/actuator
-management.health.mail.enabled=false
-
-### resources
-spring.mvc.servlet.load-on-startup=0
-spring.mvc.static-path-pattern=/static/**
-spring.resources.static-locations=classpath:/static/
-
-### freemarker
-spring.freemarker.templateLoaderPath=classpath:/templates/
-spring.freemarker.suffix=.ftl
-spring.freemarker.charset=UTF-8
-spring.freemarker.request-context-attribute=request
-spring.freemarker.settings.number_format=0.##########
-
-### mybatis oracle
-mybatis.mapper-locations=classpath:/mybatis-mapper/*Mapper.xml
-#mybatis.type-aliases-package=com.xxl.job.admin.core.model
-mybatis.configuration.jdbc-type-for-null=null
-
-### xxl-job, datasource mysql
-#spring.datasource.url=jdbc:mysql://127.0.0.1:3306/xxl_job?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&serverTimezone=Asia/Shanghai
-#spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
-#spring.datasource.username=dms2
-#spring.datasource.password=qw1112
-
-### xxl-job, datasource oracle
-spring.datasource.url=jdbc:oracle:thin:@//192.168.11.40:1521/crms
-spring.datasource.driver-class-name=oracle.jdbc.OracleDriver
-spring.datasource.username=root
-spring.datasource.password=123456
-
-### datasource-pool
-spring.datasource.type=com.zaxxer.hikari.HikariDataSource
-spring.datasource.hikari.minimum-idle=10
-spring.datasource.hikari.maximum-pool-size=30
-spring.datasource.hikari.auto-commit=true
-spring.datasource.hikari.idle-timeout=30000
-spring.datasource.hikari.pool-name=HikariCP
-spring.datasource.hikari.max-lifetime=900000
-spring.datasource.hikari.connection-timeout=10000
-# MYSQL
-#spring.datasource.hikari.connection-test-query=SELECT 1 FROM DUAL
-# ORACLE
-spring.datasource.hikari.connection-test-query=SELECT 1 FROM DUAL
-spring.datasource.hikari.validation-timeout=1000
-
-### xxl-job, email
-spring.mail.host=smtp.qq.com
-spring.mail.port=25
-spring.mail.username=xxx@qq.com
-spring.mail.from=xxx@qq.com
-spring.mail.password=xxx
-spring.mail.properties.mail.smtp.auth=true
-spring.mail.properties.mail.smtp.starttls.enable=true
-spring.mail.properties.mail.smtp.starttls.required=true
-spring.mail.properties.mail.smtp.socketFactory.class=javax.net.ssl.SSLSocketFactory
-
-### xxl-job, access token
-xxl.job.accessToken=default_token
-
-### xxl-job, i18n (default is zh_CN, and you can choose "zh_CN", "zh_TC" and "en")
-xxl.job.i18n=zh_CN
-
-## xxl-job, triggerpool max size
-xxl.job.triggerpool.fast.max=200
-xxl.job.triggerpool.slow.max=100
-
-### xxl-job, log retention days
-xxl.job.logretentiondays=30
diff --git a/xxl-job-admin/src/main/resources/application.yml b/xxl-job-admin/src/main/resources/application.yml
new file mode 100644
index 00000000..1e242905
--- /dev/null
+++ b/xxl-job-admin/src/main/resources/application.yml
@@ -0,0 +1,85 @@
+server:
+ port: 16025
+ servlet:
+ context-path: /
+spring:
+ application:
+ name: xxl-job-admin
+ datasource:
+ driver-class-name: oracle.jdbc.OracleDriver
+ hikari:
+ auto-commit: true
+ connection-test-query: SELECT 1 FROM DUAL
+ connection-timeout: 10000
+ idle-timeout: 30000
+ max-lifetime: 900000
+ maximum-pool-size: 30
+ minimum-idle: 10
+ pool-name: HikariCP
+ validation-timeout: 1000
+ type: com.zaxxer.hikari.HikariDataSource
+ url: jdbc:oracle:thin:@//192.168.11.40:1521/crms
+ password: qw1112
+ username: dms2
+ freemarker:
+ charset: UTF-8
+ request-context-attribute: request
+ settings:
+ number_format: 0.##########
+ suffix: .ftl
+ templateLoaderPath: classpath:/templates/
+ mail:
+ from: xxx@qq.com
+ host: smtp.qq.com
+ password: xxx
+ port: 25
+ properties:
+ mail:
+ smtp:
+ auth: true
+ socketFactory:
+ class: javax.net.ssl.SSLSocketFactory
+ starttls:
+ enable: true
+ required: true
+ username: xxx@qq.com
+ mvc:
+ servlet:
+ load-on-startup: 0
+ static-path-pattern: /static/**
+ web:
+ resources:
+ static-locations: classpath:/static/
+xxl:
+ job:
+ accessToken: default_token
+ admin:
+ addresses: http://127.0.0.1:${server.port}${server.servlet.context-path}
+ executor:
+ address: ''
+ appname: ${spring.application.name}
+ ip: ''
+ logpath: ${logging.file.path}/jobhandler
+ logretentiondays: 30
+ port: 16024
+ i18n: zh_CN
+ logretentiondays: 30
+ triggerpool:
+ fast:
+ max: 200
+ slow:
+ max: 100
+management:
+ health:
+ mail:
+ enabled: false
+ server:
+ base-path: /actuator
+mybatis:
+ configuration:
+ jdbc-type-for-null: 'null'
+ mapper-locations: classpath:/mybatis-mapper/*Mapper.xml
+
+logging:
+ file:
+ path: /home/desuo/logs/${spring.application.name}/${server.port}
\ No newline at end of file
diff --git a/xxl-job-admin/src/main/resources/logback.xml b/xxl-job-admin/src/main/resources/logback-spring.xml
similarity index 81%
rename from xxl-job-admin/src/main/resources/logback.xml
rename to xxl-job-admin/src/main/resources/logback-spring.xml
index d4b08c24..c543bb82 100644
--- a/xxl-job-admin/src/main/resources/logback.xml
+++ b/xxl-job-admin/src/main/resources/logback-spring.xml
@@ -2,7 +2,7 @@
logback
-
+
@@ -11,7 +11,7 @@
- ${log.path}
+ ${log.path}/xxl-job-admin.log
${log.path}.%d{yyyy-MM-dd}.zip