一:介绍 1 2 关于mvn怎么打包测试和生产文件,这里做一下介绍, 主要是用到了mvn的profiles,设置了两个环境的目录。
二:结构 1 2 3 1.两个bat的打包脚本 2.两个不同环境的配置文件目录 其中application.yml指定了不同的profiles.active
三:配置文件 3.1 pom.xml pom.xml
3.2 sit目录 sit.zip
3.3 prod目录 prod.zip
3.4 sit打包bat 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 :: RenJie set versionPath=D:\javaProgram\iagent\trunk\code\src\main\resources\static set pomPath=D:\javaProgram\iagent\trunk\code D: cd %versionPath% :: 生成version.jsp和version.html set version=Version:%date:~0,4%%date:~5,2%%date:~8,2%_%time:~0,2%%time:~3,2%_jren echo **************current version:%version% echo current path:%cd% echo %version%>version.jsp echo %version%>version.html ::打包 cd %pomPath% call mvn clean package -P sit :: 删除版本号文件 cd %versionPath% del version.jsp del version.html echo package success pause
3.5 prod打包bat 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 :: RenJie set versionPath=D:\javaProgram\iagent\trunk\code\src\main\resources\static set pomPath=D:\javaProgram\iagent\trunk\code D: cd %versionPath% :: 生成version.jsp和version.html set version=Version:%date:~0,4%%date:~5,2%%date:~8,2%_%time:~0,2%%time:~3,2%_jren echo **************current version:%version% echo current path:%cd% echo %version%>version.jsp echo %version%>version.html ::打包 cd %pomPath% call mvn clean package -P prod :: 删除版本号文件 cd %versionPath% del version.jsp del version.html echo package success pause
3.6 logback-spring.xml prod 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 <?xml version="1.0" encoding="UTF-8"?> <configuration debug="true"> <!-- 彩色日志 --> <!-- 彩色日志依赖的渲染类 --> <conversionRule conversionWord="clr" converterClass="org.springframework.boot.logging.logback.ColorConverter" /> <conversionRule conversionWord="wex" converterClass="org.springframework.boot.logging.logback.WhitespaceThrowableProxyConverter" /> <!-- 彩色日志格式 --> <property name="CONSOLE_LOG_PATTERN" value="iagent %d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} [%line] - %msg%n" /> <property name="FILE_LOG_PATTERN" value="iagent %d{yyyy-MM-dd HH:mm:ss.SSS} %5p ${PID:- } --- [%t] %-40.40logger{39} : %m%n%wex" /> <!-- 引入application.yml文件,要不然生成的log目录为XXX_IS_UNDEFINED。 --> <property resource="application.yml" /> <!--多环境的日志输出 --> <!--根据不同环境(prod:生产环境,test:测试环境,dev:开发环境)来定义不同的日志输出, --> <!--在 logback-spring.xml中使用 springProfile 节点来定义,方法如下: --> <!-- 生产环境日志 --> <springProfile name="prod"> <property name="LOG_HOME" value="logs/" /> <!--输出到控制台 --> <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender"> <encoder> <pattern>${CONSOLE_LOG_PATTERN}</pattern> <charset>utf-8</charset> </encoder> </appender> <!--info 级别的日志 --> <!-- 按照每天生成日志文件 --> <appender name="INFO" class="ch.qos.logback.core.rolling.RollingFileAppender"> <filter class="ch.qos.logback.classic.filter.LevelFilter"> <level>INFO</level> <onMatch>ACCEPT</onMatch> <onMismatch>DENY</onMismatch> </filter> <encoder> <pattern>${FILE_LOG_PATTERN}</pattern> </encoder> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <!-- 日志文件输出的文件名 --> <fileNamePattern>${LOG_HOME}/info.%d{yyyy-MM-dd}.log </fileNamePattern> <!-- 日志文件保留天数 --> <MaxHistory>30</MaxHistory> </rollingPolicy> <!-- 日志文件最大的大小 --> <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> <MaxFileSize>10MB</MaxFileSize> </triggeringPolicy> </appender> <!--WARN 级别的日志 --> <appender name="WARN" class="ch.qos.logback.core.rolling.RollingFileAppender"> <filter class="ch.qos.logback.classic.filter.LevelFilter"> <level>WARN</level> <onMatch>ACCEPT</onMatch> <onMismatch>DENY</onMismatch> </filter> <encoder> <pattern>${FILE_LOG_PATTERN}</pattern> </encoder> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <fileNamePattern>${LOG_HOME}/warn.%d{yyyy-MM-dd}.log </fileNamePattern> <MaxHistory>30</MaxHistory> </rollingPolicy> </appender> <!--ERROR 级别的日志 --> <appender name="ERROR" class="ch.qos.logback.core.rolling.RollingFileAppender"> <filter class="ch.qos.logback.classic.filter.LevelFilter"> <level>ERROR</level> <onMatch>ACCEPT</onMatch> <onMismatch>DENY</onMismatch> </filter> <encoder> <pattern>${FILE_LOG_PATTERN}</pattern> </encoder> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <fileNamePattern>${LOG_HOME}/error.%d{yyyy-MM-dd}.log </fileNamePattern> <MaxHistory>30</MaxHistory> </rollingPolicy> </appender> <root level="WARN"> <appender-ref ref="WARN" /> <appender-ref ref="ERROR" /> </root> </springProfile> </configuration>
*************感谢您的阅读*************
springboot打war包
BAT文件里Maven命令执行后退出的解决方案