1 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 2 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 3 <parent> 4 <!--公司或者組織的惟一標誌,而且配置時生成的路徑也是由今生成,maven會把該項目打包成的jar包放在本地路徑/com/hengyunsoft--> 5 <groupId>com.hengyunsoft</groupId> 6 <artifactId>security-enterprise</artifactId> 7 <version>2.3.0</version> 8 </parent> 9 <!--模型版本。maven2.0必須這樣寫,如今是maven2惟一支持的版本--> 10 <modelVersion>4.0.0</modelVersion> 11 <!--本項目的惟一ID,一個groupId下面可能有多個項目,就是靠artifactId來區分的--> 12 <artifactId>hengyun-admin</artifactId> 13 <!--打包的機制,如pom,jar,ejb,war等,默認jar--> 14 <packaging>jar</packaging> 15 <description>hengyun-admin</description> 16 <!-- 爲pom定義一些常量,在pom中的其它地方能夠直接引用 使用方式 以下 :${quartz.version} --> 17 <properties> 18 <quartz.version>2.3.0</quartz.version> 19 <shiro.version>1.4.0</shiro.version> 20 <kaptcha.version>0.0.9</kaptcha.version> 21 <easypoi.version>3.1.0</easypoi.version> 22 <qiniu.version>[7.2.0, 7.2.99]</qiniu.version> 23 <aliyun.oss.version>2.8.3</aliyun.oss.version> 24 <aliyun.core.version>3.2.2</aliyun.core.version> 25 <aliyun.dysmsapi.version>1.1.0</aliyun.dysmsapi.version> 26 <qcloud.cos.version>5.4.4</qcloud.cos.version> 27 <qcloud.qcloudsms.version>1.0.5</qcloud.qcloudsms.version> 28 <fastdfs.version>1.26.2</fastdfs.version> 29 <freemarker.version>2.3.28</freemarker.version> 30 <activiti.version>5.22.0</activiti.version> 31 <starter.eureka.version>1.4.7.RELEASE</starter.eureka.version> 32 </properties> 33 <!--定義本項目的依賴關係--> 34 <dependencies> 35 <!--每一個dependency都對應一個jar包--> 36 <dependency> 37 <!--通常狀況下,maven是經過groupId、artifactId、version這三個元素(俗稱座標)來檢索該構件,而後引入到工程, 38 若是別人想引用你如今開發的這個項目(前提是已經開發完畢併發布到了遠程倉庫),就須要在他的pom文件中新建一個dependency 39 節點,將該項目的groupId,artifactId,version寫入,maven就會把你上傳的jar包下載到他本地--> 40 <groupId>com.hengyunsoft</groupId> 41 <artifactId>hengyun-common</artifactId> 42 <version>2.3.0</version> 43 </dependency> 44 <dependency> 45 <groupId>com.hengyunsoft</groupId> 46 <artifactId>hengyun-dynamic-datasource</artifactId> 47 <version>2.3.0</version> 48 </dependency> 49 <dependency> 50 <groupId>com.hengyunsoft</groupId> 51 <artifactId>hengyun-bpm</artifactId> 52 <version>2.3.0</version> 53 </dependency> 54 <dependency> 55 <groupId>org.quartz-scheduler</groupId> 56 <artifactId>quartz</artifactId> 57 <version>${quartz.version}</version> 58 <!-- 屏蔽依賴關係。 好比項目中使用的libA依賴某個庫的1.0版,libB依賴某個庫的2.0版,如今想統一使用2.0版,就應該屏蔽掉對1.0版的依賴 --> 59 <exclusions> 60 <exclusion> 61 <groupId>com.mchange</groupId> 62 <artifactId>c3p0</artifactId> 63 </exclusion> 64 <exclusion> 65 <groupId>com.zaxxer</groupId> 66 <artifactId>HikariCP-java6</artifactId> 67 </exclusion> 68 </exclusions> 69 </dependency> 70 <dependency> 71 <groupId>org.apache.shiro</groupId> 72 <artifactId>shiro-core</artifactId> 73 <version>${shiro.version}</version> 74 </dependency> 75 <dependency> 76 <groupId>org.apache.shiro</groupId> 77 <artifactId>shiro-spring</artifactId> 78 <version>${shiro.version}</version> 79 </dependency> 80 <dependency> 81 <groupId>com.github.axet</groupId> 82 <artifactId>kaptcha</artifactId> 83 <version>${kaptcha.version}</version> 84 </dependency> 85 <dependency> 86 <groupId>cn.afterturn</groupId> 87 <artifactId>easypoi-base</artifactId> 88 <version>${easypoi.version}</version> 89 </dependency> 90 <dependency> 91 <groupId>cn.afterturn</groupId> 92 <artifactId>easypoi-web</artifactId> 93 <version>${easypoi.version}</version> 94 </dependency> 95 <dependency> 96 <groupId>cn.afterturn</groupId> 97 <artifactId>easypoi-annotation</artifactId> 98 <version>${easypoi.version}</version> 99 </dependency> 100 <dependency> 101 <groupId>com.qiniu</groupId> 102 <artifactId>qiniu-java-sdk</artifactId> 103 <version>${qiniu.version}</version> 104 </dependency> 105 <dependency> 106 <groupId>com.aliyun.oss</groupId> 107 <artifactId>aliyun-sdk-oss</artifactId> 108 <version>${aliyun.oss.version}</version> 109 </dependency> 110 <dependency> 111 <groupId>com.qcloud</groupId> 112 <artifactId>cos_api</artifactId> 113 <version>${qcloud.cos.version}</version> 114 <exclusions> 115 <exclusion> 116 <groupId>org.slf4j</groupId> 117 <artifactId>slf4j-log4j12</artifactId> 118 </exclusion> 119 </exclusions> 120 </dependency> 121 <dependency> 122 <groupId>com.aliyun</groupId> 123 <artifactId>aliyun-java-sdk-core</artifactId> 124 <version>${aliyun.core.version}</version> 125 </dependency> 126 <dependency> 127 <groupId>com.aliyun</groupId> 128 <artifactId>aliyun-java-sdk-dysmsapi</artifactId> 129 <version>${aliyun.dysmsapi.version}</version> 130 </dependency> 131 <dependency> 132 <groupId>com.github.qcloudsms</groupId> 133 <artifactId>qcloudsms</artifactId> 134 <version>${qcloud.qcloudsms.version}</version> 135 </dependency> 136 <dependency> 137 <groupId>com.sun.mail</groupId> 138 <artifactId>javax.mail</artifactId> 139 </dependency> 140 <dependency> 141 <groupId>org.freemarker</groupId> 142 <artifactId>freemarker</artifactId> 143 <version>${freemarker.version}</version> 144 </dependency> 145 <dependency> 146 <groupId>com.github.tobato</groupId> 147 <artifactId>fastdfs-client</artifactId> 148 <version>${fastdfs.version}</version> 149 </dependency> 150 151 <!-- activiti --> 152 <dependency> 153 <groupId>org.activiti</groupId> 154 <artifactId>activiti-spring-boot-starter-basic</artifactId> 155 <version>${activiti.version}</version> 156 <exclusions> 157 <exclusion> 158 <groupId>org.mybatis</groupId> 159 <artifactId>mybatis</artifactId> 160 </exclusion> 161 </exclusions> 162 </dependency> 163 <dependency> 164 <groupId>org.activiti</groupId> 165 <artifactId>activiti-explorer</artifactId> 166 <version>${activiti.version}</version> 167 <exclusions> 168 <exclusion> 169 <artifactId>vaadin</artifactId> 170 <groupId>com.vaadin</groupId> 171 </exclusion> 172 <exclusion> 173 <artifactId>dcharts-widget</artifactId> 174 <groupId>org.vaadin.addons</groupId> 175 </exclusion> 176 <exclusion> 177 <artifactId>activiti-simple-workflow</artifactId> 178 <groupId>org.activiti</groupId> 179 </exclusion> 180 <exclusion> 181 <artifactId>slf4j-log4j12</artifactId> 182 <groupId>org.slf4j</groupId> 183 </exclusion> 184 </exclusions> 185 </dependency> 186 <dependency> 187 <groupId>org.activiti</groupId> 188 <artifactId>activiti-diagram-rest</artifactId> 189 <version>${activiti.version}</version> 190 </dependency> 191 <dependency> 192 <groupId>org.activiti</groupId> 193 <artifactId>activiti-modeler</artifactId> 194 <version>${activiti.version}</version> 195 </dependency> 196 <!-- end activiti --> 197 <!-- jwt --> 198 <dependency> 199 <groupId>io.jsonwebtoken</groupId> 200 <artifactId>jjwt</artifactId> 201 <version>0.9.1</version> 202 </dependency> 203 <!-- end jwt --> 204 205 <!--對接普元--> 206 <dependency> 207 <groupId>sso</groupId> 208 <artifactId>proxy</artifactId> 209 <version>7.0.3</version> 210 <!--maven認爲,程序對外部的依賴會隨着程序的所處階段和應用場景而變化,因此maven中的依賴關係有做用於(Scope)的限制--> 211 <!--scope包含以下取值:compile(編譯範圍)、provided(已提供範圍)、runtime(運行時範圍)、test(測試範圍)、system(系統範圍)--> 212 <scope>system</scope> 213 <systemPath>${project.basedir}/src/main/resources/lib/sso-proxy-7.0.3.jar</systemPath> 214 </dependency> 215 <dependency> 216 <groupId>sso</groupId> 217 <artifactId>client</artifactId> 218 <version>7.0.3</version> 219 <scope>system</scope> 220 <systemPath>${project.basedir}/src/main/resources/lib/sso-client-java-7.0.3.jar</systemPath> 221 </dependency> 222 223 <!--<dependency>--> 224 <!--<groupId>org.springframework.cloud</groupId>--> 225 <!--<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>--> 226 <!--<version>2.0.2.RELEASE</version>--> 227 <!--</dependency>--> 228 </dependencies> 229 <!--構建配置,build描述瞭如何來編譯及打包項目,而具體的編譯和打包工做是經過build中配置的plugin來完成的 230 固然plugin配置不是必須的,默認狀況下,maven會綁定幾個插件來完成基本操做--> 231 <build> 232 <!--產生的構件的文件名,默認值是${artifactId}-${version}--> 233 <finalName>${project.artifactId}</finalName> 234 <plugins> 235 <plugin> 236 <groupId>org.springframework.boot</groupId> 237 <artifactId>spring-boot-maven-plugin</artifactId> 238 <configuration> 239 <includeSystemScope>true</includeSystemScope> 240 </configuration> 241 </plugin> 242 <plugin><!--執行測試文件--> 243 <groupId>org.apache.maven.plugins</groupId> 244 <artifactId>maven-surefire-plugin</artifactId> 245 <configuration> 246 <skipTests>true</skipTests> 247 </configuration> 248 </plugin> 249 <plugin> 250 <groupId>com.spotify</groupId> 251 <artifactId>docker-maven-plugin</artifactId> 252 <version>${docker.plugin.version}</version> 253 <configuration> 254 <imageName>hengyun/${project.artifactId}</imageName> 255 <dockerDirectory>${project.basedir}/</dockerDirectory> 256 <resources> 257 <resource> 258 <targetPath>/</targetPath> 259 <directory>${project.build.directory}</directory> 260 <include>${project.build.finalName}.jar</include> 261 </resource> 262 </resources> 263 </configuration> 264 </plugin> 265 </plugins> 266 </build> 267 </project>