pom.xml 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <project xmlns="http://maven.apache.org/POM/4.0.0"
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  5. <modelVersion>4.0.0</modelVersion>
  6. <groupId>com.jiayue.ipfcst</groupId>
  7. <artifactId>ipfcst-reportquery</artifactId>
  8. <!--改版本号时注意第2位的大小包:0大包 1小包-->
  9. <version>3.1.249.m</version>
  10. <properties>
  11. <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  12. <java.version>1.8</java.version>
  13. <ipfcst.version>3.0</ipfcst.version>
  14. <jasypt-boot.version>2.1.1</jasypt-boot.version>
  15. <commons.fileupload.version>1.3</commons.fileupload.version>
  16. <commons.net.version>3.3</commons.net.version>
  17. <velocity.version>1.7</velocity.version>
  18. <jodatime.version>2.9.9</jodatime.version>
  19. </properties>
  20. <dependencies>
  21. <dependency>
  22. <groupId>com.jiayue.ipfcst</groupId>
  23. <artifactId>ipfcst-common-data</artifactId>
  24. <version>3.0.0</version>
  25. </dependency>
  26. <dependency>
  27. <groupId>com.jiayue.ipfcst</groupId>
  28. <artifactId>ipfcst-common-security</artifactId>
  29. <version>3.0.0</version>
  30. </dependency>
  31. <dependency>
  32. <groupId>cn.hutool</groupId>
  33. <artifactId>hutool-all</artifactId>
  34. <version>5.3.5</version>
  35. </dependency>
  36. <dependency>
  37. <groupId>org.apache.poi</groupId>
  38. <artifactId>poi-ooxml</artifactId>
  39. <version>3.17</version>
  40. </dependency>
  41. <!--配置文件处理器-->
  42. <dependency>
  43. <groupId>org.springframework.boot</groupId>
  44. <artifactId>spring-boot-configuration-processor</artifactId>
  45. <optional>true</optional>
  46. </dependency>
  47. <!--jasypt配置文件加解密-->
  48. <dependency>
  49. <groupId>com.github.ulisesbocchio</groupId>
  50. <artifactId>jasypt-spring-boot-starter</artifactId>
  51. <version>${jasypt-boot.version}</version>
  52. </dependency>
  53. <!--Lombok-->
  54. <!--测试依赖-->
  55. <dependency>
  56. <groupId>org.projectlombok</groupId>
  57. <artifactId>lombok</artifactId>
  58. <scope>provided</scope>
  59. </dependency>
  60. <dependency>
  61. <groupId>org.springframework.boot</groupId>
  62. <artifactId>spring-boot-starter-test</artifactId>
  63. <scope>test</scope>
  64. </dependency>
  65. <dependency>
  66. <groupId>net.sf.ehcache</groupId>
  67. <artifactId>ehcache</artifactId>
  68. </dependency>
  69. <dependency>
  70. <groupId>org.springframework.boot</groupId>
  71. <artifactId>spring-boot-starter-web</artifactId>
  72. </dependency>
  73. <dependency>
  74. <groupId>org.springframework.boot</groupId>
  75. <artifactId>spring-boot-starter-undertow</artifactId>
  76. </dependency>
  77. <dependency>
  78. <groupId>commons-fileupload</groupId>
  79. <artifactId>commons-fileupload</artifactId>
  80. <version>${commons.fileupload.version}</version>
  81. </dependency>
  82. <dependency>
  83. <groupId>org.apache.velocity</groupId>
  84. <artifactId>velocity</artifactId>
  85. <version>${velocity.version}</version>
  86. </dependency>
  87. <dependency>
  88. <groupId>joda-time</groupId>
  89. <artifactId>joda-time</artifactId>
  90. <version>${jodatime.version}</version>
  91. </dependency>
  92. <!--ftp上传下载依赖包-->
  93. <dependency>
  94. <groupId>commons-net</groupId>
  95. <artifactId>commons-net</artifactId>
  96. <version>${commons.net.version}</version>
  97. </dependency>
  98. <dependency>
  99. <groupId>com.google.zxing</groupId>
  100. <artifactId>core</artifactId>
  101. <version>3.3.3</version>
  102. </dependency>
  103. </dependencies>
  104. <dependencyManagement>
  105. <dependencies>
  106. <dependency>
  107. <groupId>com.jiayue.ipfcst</groupId>
  108. <artifactId>ipfcst</artifactId>
  109. <version>3.0.0</version>
  110. <type>pom</type>
  111. <scope>import</scope>
  112. </dependency>
  113. </dependencies>
  114. </dependencyManagement>
  115. <profiles> <!--考虑到window 和linux环境 npm命令格式的问题,使用maven的profile实现动态指定命令-->
  116. <profile>
  117. <id>window</id>
  118. <properties>
  119. <npm>npm.cmd</npm>
  120. </properties>
  121. <activation>
  122. <activeByDefault>true</activeByDefault>
  123. </activation>
  124. </profile>
  125. <profile>
  126. <id>linux</id>
  127. <properties>
  128. <npm>npm</npm>
  129. </properties>
  130. </profile>
  131. </profiles>
  132. <build>
  133. <finalName>${project.artifactId}</finalName>
  134. <resources>
  135. <resource>
  136. <directory>src/main/resources</directory>
  137. <filtering>true</filtering>
  138. <excludes>
  139. <exclude>*.keystore</exclude>
  140. </excludes>
  141. </resource>
  142. <resource>
  143. <directory>src/main/resources</directory>
  144. <filtering>false</filtering>
  145. <includes>
  146. <include>*.keystore</include>
  147. </includes>
  148. </resource>
  149. </resources>
  150. <plugins>
  151. <plugin>
  152. <artifactId>maven-compiler-plugin</artifactId>
  153. <version>3.7.0</version>
  154. <configuration>
  155. <source>${java.version}</source>
  156. <target>${java.version}</target>
  157. <encoding>${project.build.sourceEncoding}</encoding>
  158. <!--<compilerArgs>-->
  159. <!--&lt;!&ndash; 过期的方法的警告&ndash;&gt;-->
  160. <!--<arg>-Xlint:deprecation</arg>-->
  161. <!--</compilerArgs>-->
  162. <compilerArguments>
  163. <!-- 是否输出所有的编译信息(包括类的加载等)-->
  164. <!--<verbose />-->
  165. <!-- 解决maven命令编译报错,因为rt.jar 和jce.jar在jre的lib下面,不在jdk的lib下面,
  166. 导致maven找不到(java7以后会出现这个问题),将这2个jar包拷贝到jdk的lib下面估计也好使-->
  167. <bootclasspath>${java.home}\lib\rt.jar;${java.home}\lib\jce.jar</bootclasspath>
  168. </compilerArguments>
  169. </configuration>
  170. </plugin>
  171. <!--跳过test类-->
  172. <plugin>
  173. <groupId>org.apache.maven.plugins</groupId>
  174. <artifactId>maven-surefire-plugin</artifactId>
  175. <version>2.21.0</version>
  176. <configuration>
  177. <skipTests>true</skipTests>
  178. </configuration>
  179. </plugin>
  180. <!-- 插件maven-clean-plugin,用于在编译前,清除之前编译的文件、文件夹等,避免残留之前的内容 -->
  181. <plugin>
  182. <groupId>org.apache.maven.plugins</groupId>
  183. <artifactId>maven-clean-plugin</artifactId>
  184. <version>3.1.0</version>
  185. <configuration>
  186. <filesets>
  187. <fileset>
  188. <!-- 前端资源目录,即:存放前端包目录-->
  189. <directory>src/main/resources/static</directory>
  190. </fileset>
  191. <fileset>
  192. <!-- Vue项目打包自动生成的dist目录 -->
  193. <directory>${basedir}/dist</directory>
  194. </fileset>
  195. </filesets>
  196. </configuration>
  197. </plugin>
  198. <!--////////////////////////////////////////////////////小包配置开始//////////////////////////////////////-->
  199. <!--拷贝依赖jar文件到ipfcst-lib目录下-->
  200. <plugin>
  201. <groupId>org.apache.maven.plugins</groupId>
  202. <artifactId>maven-dependency-plugin</artifactId>
  203. <version>2.10</version>
  204. <executions>
  205. <execution>
  206. <id>copy-dependencies</id>
  207. <phase>package</phase>
  208. <goals>
  209. <goal>copy-dependencies</goal>
  210. </goals>
  211. <configuration>
  212. <excludeArtifactIds>
  213. ipfcst-common-data,ipfcst-common-security,ipfcst-common-core,protocol-iec104,protocol-modbus,protocol-cdt,protocol-core,protocol-all
  214. </excludeArtifactIds>
  215. <outputDirectory>../syjy/ipfcstV3/ipfcst-lib</outputDirectory>
  216. </configuration>
  217. </execution>
  218. </executions>
  219. </plugin>
  220. <!--////////////////////////////////////////////////////小包配置结束//////////////////////////////////////-->
  221. <plugin>
  222. <groupId>org.codehaus.mojo</groupId>
  223. <artifactId>exec-maven-plugin</artifactId>
  224. <version>1.6.0</version>
  225. <executions>
  226. <execution>
  227. <id>exec-npm-install</id>
  228. <phase>validate</phase>
  229. <goals>
  230. <goal>exec</goal>
  231. </goals>
  232. <configuration>
  233. <executable>${npm}</executable>
  234. <arguments>
  235. <argument>install</argument>
  236. </arguments>
  237. <workingDirectory>${basedir}/src/main/frontend</workingDirectory>
  238. </configuration>
  239. </execution>
  240. <execution>
  241. <id>exec-npm-run-build</id>
  242. <phase>generate-resources</phase>
  243. <goals>
  244. <goal>exec</goal>
  245. </goals>
  246. <configuration>
  247. <executable>${npm}</executable>
  248. <arguments>
  249. <argument>run</argument>
  250. <argument>build:prod</argument>
  251. </arguments>
  252. <workingDirectory>${basedir}/src/main/frontend</workingDirectory>
  253. </configuration>
  254. </execution>
  255. <execution>
  256. <phase>package</phase>
  257. <goals>
  258. <goal>java</goal>
  259. </goals>
  260. <configuration>
  261. <mainClass>com.jiayue.ipfcst.util.CreateReportquerySh</mainClass>
  262. <arguments>
  263. <argument>${project.version}</argument>
  264. </arguments>
  265. </configuration>
  266. </execution>
  267. </executions>
  268. </plugin>
  269. <plugin>
  270. <groupId>org.apache.maven.plugins</groupId>
  271. <artifactId>maven-resources-plugin</artifactId>
  272. <version>3.1.0</version>
  273. <configuration>
  274. <nonFilteredFileExtensions>
  275. <nonFilteredFileExtension>woff</nonFilteredFileExtension>
  276. <nonFilteredFileExtension>ttf</nonFilteredFileExtension>
  277. <nonFilteredFileExtension>woff2</nonFilteredFileExtension>
  278. <nonFilteredFileExtension>eot</nonFilteredFileExtension>
  279. <nonFilteredFileExtension>swf</nonFilteredFileExtension>
  280. <nonFilteredFileExtension>ico</nonFilteredFileExtension>
  281. <nonFilteredFileExtension>png</nonFilteredFileExtension>
  282. <nonFilteredFileExtension>mp3</nonFilteredFileExtension>
  283. </nonFilteredFileExtensions>
  284. <includeEmptyDirs>true</includeEmptyDirs>
  285. </configuration>
  286. <executions>
  287. <execution>
  288. <id>copy config</id>
  289. <phase>package</phase>
  290. <goals>
  291. <goal>copy-resources</goal>
  292. </goals>
  293. <configuration>
  294. <resources>
  295. <resource>
  296. <directory>src/main/resources</directory>
  297. <includes>
  298. <include>application.yml</include>
  299. </includes>
  300. </resource>
  301. </resources>
  302. <outputDirectory>../syjy/ipfcstV3/produce/reportquery/${project.version}</outputDirectory>
  303. </configuration>
  304. </execution>
  305. <execution>
  306. <id>copy static</id>
  307. <phase>generate-resources</phase>
  308. <goals>
  309. <goal>copy-resources</goal>
  310. </goals>
  311. <configuration>
  312. <!-- 复制前端打包文件到这里 -->
  313. <outputDirectory>src/main/resources/static</outputDirectory>
  314. <overwrite>true</overwrite>
  315. <resources>
  316. <resource>
  317. <!-- 从前端打包的目录dist进行指定文件、文件夹内容的复制-->
  318. <directory>${basedir}/dist</directory>
  319. <includes>
  320. <!-- 具体根据实际前端代码、及目录结构进行配置-->
  321. <include>assets/</include>
  322. <include>favicon.ico</include>
  323. <include>index.html</include>
  324. <include>audio/</include>
  325. </includes>
  326. </resource>
  327. </resources>
  328. </configuration>
  329. </execution>
  330. </executions>
  331. </plugin>
  332. <plugin>
  333. <groupId>org.apache.maven.plugins</groupId>
  334. <artifactId>maven-jar-plugin</artifactId>
  335. <version>2.6</version>
  336. <configuration>
  337. <!--不打入jar包的文件类型或者路径-->
  338. <excludes>
  339. <exclude>application.yml</exclude>
  340. <exclude>logback-reportquery.xml</exclude>
  341. </excludes>
  342. <!--////////////////////////////////////////////////////小包配置开始//////////////////////////////////////-->
  343. <archive>
  344. <manifest>
  345. <addClasspath>true</addClasspath>
  346. <classpathPrefix>/home/syjy/ipfcstV3/ipfcst-lib/</classpathPrefix>
  347. <mainClass>com.jiayue.ipfcst.ReportQueryApplication</mainClass>
  348. </manifest>
  349. <!-- 用maven在MANIFEST.MF资料中的Class-Path中增加当前目录(.) -->
  350. <manifestEntries>
  351. <Class-Path>/home/syjy/ipfcstV3/ipfcst-lib</Class-Path>
  352. </manifestEntries>
  353. </archive>
  354. <!--////////////////////////////////////////////////////小包配置结束//////////////////////////////////////-->
  355. </configuration>
  356. </plugin>
  357. <plugin>
  358. <groupId>org.springframework.boot</groupId>
  359. <artifactId>spring-boot-maven-plugin</artifactId>
  360. <version>2.1.7.RELEASE</version>
  361. <configuration>
  362. <outputDirectory>../syjy/ipfcstV3/produce/reportquery/${project.version}</outputDirectory>
  363. <!--////////////////////////////////////////////////////小包配置开始//////////////////////////////////////-->
  364. <includes>
  365. <include>
  366. <groupId>nothing</groupId>
  367. <artifactId>nothing</artifactId>
  368. </include>
  369. <include>
  370. <groupId>com.jiayue.ipfcst</groupId>
  371. <artifactId>ipfcst-common-data</artifactId>
  372. </include>
  373. <include>
  374. <groupId>com.jiayue.ipfcst</groupId>
  375. <artifactId>ipfcst-common-security</artifactId>
  376. </include>
  377. <include>
  378. <groupId>com.jiayue.ipfcst</groupId>
  379. <artifactId>ipfcst-common-core</artifactId>
  380. </include>
  381. <include>
  382. <groupId>wei.yigulu</groupId>
  383. <artifactId>protocol-iec104</artifactId>
  384. </include>
  385. <include>
  386. <groupId>wei.yigulu</groupId>
  387. <artifactId>protocol-modbus</artifactId>
  388. </include>
  389. <include>
  390. <groupId>wei.yigulu</groupId>
  391. <artifactId>protocol-cdt</artifactId>
  392. </include>
  393. <include>
  394. <groupId>wei.yigulu</groupId>
  395. <artifactId>protocol-core</artifactId>
  396. </include>
  397. <include>
  398. <groupId>wei.yigulu</groupId>
  399. <artifactId>protocol-all</artifactId>
  400. </include>
  401. </includes>
  402. <!--////////////////////////////////////////////////////小包配置结束//////////////////////////////////////-->
  403. <!--控制是否启用支持Linux下service方式运行-->
  404. <executable>false</executable>
  405. </configuration>
  406. <executions>
  407. <execution>
  408. <goals>
  409. <goal>build-info</goal>
  410. <goal>repackage</goal>
  411. </goals>
  412. </execution>
  413. </executions>
  414. </plugin>
  415. <plugin>
  416. <artifactId>maven-assembly-plugin</artifactId>
  417. <version>2.2.1</version>
  418. <configuration>
  419. <!-- 定义压缩包存放位置 -->
  420. <outputDirectory>../syjy/ipfcstV3/produce/reportquery/${project.version}</outputDirectory>
  421. <!-- 定义压缩包文件名 -->
  422. <finalName>${project.artifactId}-${project.version}</finalName>
  423. <appendAssemblyId>false</appendAssemblyId>
  424. <descriptors>
  425. <descriptor>src/main/resources/assembly_base.xml</descriptor>
  426. </descriptors>
  427. </configuration>
  428. <executions>
  429. <execution>
  430. <id>make-assembly</id>
  431. <phase>package</phase>
  432. <goals>
  433. <goal>single</goal>
  434. </goals>
  435. </execution>
  436. </executions>
  437. </plugin>
  438. </plugins>
  439. </build>
  440. <!--上传配置 必须 -->
  441. <distributionManagement>
  442. <repository>
  443. <id>jiayue-releases</id>
  444. <url>http://49.4.68.219:8888/nexus/content/repositories/jiayue-releases</url>
  445. </repository>
  446. <snapshotRepository>
  447. <id>jiayue-snapshots</id>
  448. <url>http://49.4.68.219:8888/nexus/content/repositories/jiayue-snapshots</url>
  449. </snapshotRepository>
  450. </distributionManagement>
  451. </project>