pom.xml 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408
  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.diagbot</groupId>
  7. <artifactId>ltapi-service</artifactId>
  8. <version>0.0.1-SNAPSHOT</version>
  9. <packaging>jar</packaging>
  10. <name>ltapi-service</name>
  11. <description>Lantone API Service for Spring Boot</description>
  12. <parent>
  13. <groupId>com.diagbot</groupId>
  14. <artifactId>diagbotcloud</artifactId>
  15. <version>0.0.1-SNAPSHOT</version>
  16. </parent>
  17. <dependencies>
  18. <dependency>
  19. <groupId>com.diagbot</groupId>
  20. <artifactId>common</artifactId>
  21. <version>0.0.1-SNAPSHOT</version>
  22. </dependency>
  23. <dependency>
  24. <groupId>org.springframework.cloud</groupId>
  25. <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
  26. </dependency>
  27. <!-- 配置-->
  28. <dependency>
  29. <groupId>org.springframework.cloud</groupId>
  30. <artifactId>spring-cloud-starter-config</artifactId>
  31. </dependency>
  32. <!-- 开启web-->
  33. <dependency>
  34. <groupId>org.springframework.boot</groupId>
  35. <artifactId>spring-boot-starter-web</artifactId>
  36. <exclusions>
  37. <exclusion>
  38. <groupId>org.springframework.boot</groupId>
  39. <artifactId>spring-boot-starter-tomcat</artifactId>
  40. </exclusion>
  41. </exclusions>
  42. </dependency>
  43. <dependency>
  44. <groupId>org.springframework.boot</groupId>
  45. <artifactId>spring-boot-starter-undertow</artifactId>
  46. </dependency>
  47. <!-- 开启feign-->
  48. <dependency>
  49. <groupId>org.springframework.cloud</groupId>
  50. <artifactId>spring-cloud-starter-openfeign</artifactId>
  51. </dependency>
  52. <!-- dashboard -->
  53. <!-- actuator-->
  54. <dependency>
  55. <groupId>org.springframework.boot</groupId>
  56. <artifactId>spring-boot-starter-actuator</artifactId>
  57. </dependency>
  58. <!--hystrix-dashboard-->
  59. <dependency>
  60. <groupId>org.springframework.cloud</groupId>
  61. <artifactId>spring-cloud-starter-netflix-hystrix-dashboard</artifactId>
  62. </dependency>
  63. <!--hystrix -->
  64. <dependency>
  65. <groupId>org.springframework.cloud</groupId>
  66. <artifactId>spring-cloud-starter-netflix-hystrix</artifactId>
  67. </dependency>
  68. <!-- zipkin-->
  69. <dependency>
  70. <groupId>org.springframework.cloud</groupId>
  71. <artifactId>spring-cloud-starter-zipkin</artifactId>
  72. </dependency>
  73. <!--swagger-->
  74. <dependency>
  75. <groupId>io.springfox</groupId>
  76. <artifactId>springfox-swagger2</artifactId>
  77. </dependency>
  78. <dependency>
  79. <groupId>io.springfox</groupId>
  80. <artifactId>springfox-swagger-ui</artifactId>
  81. </dependency>
  82. <!--security-->
  83. <dependency>
  84. <groupId>org.springframework.cloud</groupId>
  85. <artifactId>spring-cloud-starter-oauth2</artifactId>
  86. </dependency>
  87. <!-- mq -->
  88. <dependency>
  89. <groupId>org.springframework.boot</groupId>
  90. <artifactId>spring-boot-starter-amqp</artifactId>
  91. </dependency>
  92. <dependency>
  93. <groupId>org.projectlombok</groupId>
  94. <artifactId>lombok</artifactId>
  95. <optional>true</optional>
  96. </dependency>
  97. <dependency>
  98. <groupId>net.logstash.logback</groupId>
  99. <artifactId>logstash-logback-encoder</artifactId>
  100. </dependency>
  101. <dependency>
  102. <groupId>org.springframework.cloud</groupId>
  103. <artifactId>spring-cloud-starter-bus-amqp</artifactId>
  104. </dependency>
  105. <dependency>
  106. <groupId>org.springframework.cloud</groupId>
  107. <artifactId>spring-cloud-starter-stream-rabbit</artifactId>
  108. </dependency>
  109. <!--offline doc-->
  110. <dependency>
  111. <groupId>org.springframework.restdocs</groupId>
  112. <artifactId>spring-restdocs-mockmvc</artifactId>
  113. <!--<scope>test</scope>-->
  114. </dependency>
  115. <dependency>
  116. <groupId>io.github.swagger2markup</groupId>
  117. <artifactId>swagger2markup-spring-restdocs-ext</artifactId>
  118. <version>${swagger2markup.version}</version>
  119. <scope>test</scope>
  120. </dependency>
  121. <dependency>
  122. <groupId>io.springfox</groupId>
  123. <artifactId>springfox-staticdocs</artifactId>
  124. <version>2.6.1</version>
  125. <!--<scope>test</scope>-->
  126. </dependency>
  127. </dependencies>
  128. <repositories>
  129. <repository>
  130. <id>jcentral</id>
  131. <name>bintray</name>
  132. <url>http://jcenter.bintray.com</url>
  133. <snapshots>
  134. <enabled>false</enabled>
  135. </snapshots>
  136. </repository>
  137. <repository>
  138. <id>jcenter-snapshots</id>
  139. <name>jcenter</name>
  140. <url>http://oss.jfrog.org/artifactory/oss-snapshot-local/</url>
  141. </repository>
  142. </repositories>
  143. <pluginRepositories>
  144. <pluginRepository>
  145. <id>jcenter-snapshots</id>
  146. <name>jcenter</name>
  147. <url>http://oss.jfrog.org/artifactory/oss-snapshot-local/</url>
  148. </pluginRepository>
  149. <pluginRepository>
  150. <id>jcenter-releases</id>
  151. <name>jcenter</name>
  152. <url>http://jcenter.bintray.com</url>
  153. <snapshots>
  154. <enabled>false</enabled>
  155. </snapshots>
  156. </pluginRepository>
  157. </pluginRepositories>
  158. <build>
  159. <plugins>
  160. <plugin>
  161. <groupId>org.springframework.boot</groupId>
  162. <artifactId>spring-boot-maven-plugin</artifactId>
  163. </plugin>
  164. <plugin>
  165. <groupId>org.apache.maven.plugins</groupId>
  166. <artifactId>maven-compiler-plugin</artifactId>
  167. <version>3.3</version>
  168. <configuration>
  169. <compilerVersion>${java.version}</compilerVersion>
  170. <source>${java.version}</source>
  171. <target>${java.version}</target>
  172. <encoding>UTF-8</encoding>
  173. <!-- prevents endPosTable exception for maven compile -->
  174. <useIncrementalCompilation>false</useIncrementalCompilation>
  175. </configuration>
  176. </plugin>
  177. <plugin>
  178. <groupId>org.apache.maven.plugins</groupId>
  179. <artifactId>maven-surefire-plugin</artifactId>
  180. <configuration>
  181. <systemPropertyVariables>
  182. <io.springfox.staticdocs.outputDir>${swagger.output.dir}</io.springfox.staticdocs.outputDir>
  183. <io.springfox.staticdocs.snippetsOutputDir>${swagger.snippetOutput.dir}</io.springfox.staticdocs.snippetsOutputDir>
  184. </systemPropertyVariables>
  185. </configuration>
  186. </plugin>
  187. <!-- First, use the swagger2markup plugin to generate asciidoc -->
  188. <plugin>
  189. <groupId>io.github.swagger2markup</groupId>
  190. <artifactId>swagger2markup-maven-plugin</artifactId>
  191. <version>${swagger2markup.version}</version>
  192. <dependencies>
  193. <dependency>
  194. <groupId>io.github.swagger2markup</groupId>
  195. <artifactId>swagger2markup-import-files-ext</artifactId>
  196. <version>${swagger2markup.version}</version>
  197. </dependency>
  198. <dependency>
  199. <groupId>io.github.swagger2markup</groupId>
  200. <artifactId>swagger2markup-spring-restdocs-ext</artifactId>
  201. <version>${swagger2markup.version}</version>
  202. </dependency>
  203. </dependencies>
  204. <configuration>
  205. <swaggerInput>${swagger.input}</swaggerInput>
  206. <outputDir>${generated.asciidoc.directory}</outputDir>
  207. <config>
  208. <swagger2markup.markupLanguage>ASCIIDOC</swagger2markup.markupLanguage>
  209. <swagger2markup.pathsGroupedBy>TAGS</swagger2markup.pathsGroupedBy>
  210. <swagger2markup.extensions.dynamicOverview.contentPath>${project.basedir}/src/docs/asciidoc/extensions/overview</swagger2markup.extensions.dynamicOverview.contentPath>
  211. <swagger2markup.extensions.dynamicDefinitions.contentPath>${project.basedir}/src/docs/asciidoc/extensions/definitions</swagger2markup.extensions.dynamicDefinitions.contentPath>
  212. <swagger2markup.extensions.dynamicPaths.contentPath>${project.basedir}/src/docs/asciidoc/extensions/paths</swagger2markup.extensions.dynamicPaths.contentPath>
  213. <swagger2markup.extensions.dynamicSecurity.contentPath>${project.basedir}src/docs/asciidoc/extensions/security/</swagger2markup.extensions.dynamicSecurity.contentPath>
  214. <swagger2markup.extensions.springRestDocs.snippetBaseUri>${swagger.snippetOutput.dir}</swagger2markup.extensions.springRestDocs.snippetBaseUri>
  215. <swagger2markup.extensions.springRestDocs.defaultSnippets>true</swagger2markup.extensions.springRestDocs.defaultSnippets>
  216. </config>
  217. </configuration>
  218. <executions>
  219. <execution>
  220. <phase>test</phase>
  221. <goals>
  222. <goal>convertSwagger2markup</goal>
  223. </goals>
  224. </execution>
  225. </executions>
  226. </plugin>
  227. <!-- Run the generated asciidoc through Asciidoctor to generate
  228. other documentation types, such as PDFs or HTML5 -->
  229. <plugin>
  230. <groupId>org.asciidoctor</groupId>
  231. <artifactId>asciidoctor-maven-plugin</artifactId>
  232. <version>1.5.6</version>
  233. <!-- Include Asciidoctor PDF for pdf generation -->
  234. <dependencies>
  235. <dependency>
  236. <groupId>org.asciidoctor</groupId>
  237. <artifactId>asciidoctorj-pdf</artifactId>
  238. <version>1.5.0-alpha.16</version>
  239. </dependency>
  240. <dependency>
  241. <groupId>org.jruby</groupId>
  242. <artifactId>jruby-complete</artifactId>
  243. <version>1.7.21</version>
  244. </dependency>
  245. </dependencies>
  246. <!-- Configure generic document generation settings -->
  247. <configuration>
  248. <sourceDirectory>${asciidoctor.input.directory}</sourceDirectory>
  249. <sourceDocumentName>index.adoc</sourceDocumentName>
  250. <attributes>
  251. <doctype>book</doctype>
  252. <toc>left</toc>
  253. <toclevels>3</toclevels>
  254. <numbered></numbered>
  255. <hardbreaks></hardbreaks>
  256. <sectlinks></sectlinks>
  257. <sectanchors></sectanchors>
  258. <generated>${generated.asciidoc.directory}</generated>
  259. </attributes>
  260. </configuration>
  261. <!-- Since each execution can only handle one backend, run
  262. separate executions for each desired output type -->
  263. <executions>
  264. <execution>
  265. <id>output-html</id>
  266. <phase>test</phase>
  267. <goals>
  268. <goal>process-asciidoc</goal>
  269. </goals>
  270. <configuration>
  271. <backend>html5</backend>
  272. <outputDirectory>${asciidoctor.html.output.directory}</outputDirectory>
  273. </configuration>
  274. </execution>
  275. <execution>
  276. <id>output-pdf</id>
  277. <phase>test</phase>
  278. <goals>
  279. <goal>process-asciidoc</goal>
  280. </goals>
  281. <configuration>
  282. <backend>pdf</backend>
  283. <outputDirectory>${asciidoctor.pdf.output.directory}</outputDirectory>
  284. </configuration>
  285. </execution>
  286. </executions>
  287. </plugin>
  288. <!-- specify the main class for the manifest -->
  289. <plugin>
  290. <groupId>org.apache.maven.plugins</groupId>
  291. <artifactId>maven-jar-plugin</artifactId>
  292. <version>3.1.0</version>
  293. <configuration>
  294. <archive>
  295. <manifest>
  296. <addClasspath>true</addClasspath>
  297. <classpathPrefix>lib/</classpathPrefix>
  298. <!--important!!! specify the main class for the manifest!!!-->
  299. <!--important!!! specify the main class for the manifest!!!-->
  300. <!--important!!! specify the main class for the manifest!!!-->
  301. <mainClass>com.chinamobile.cmic.apidoc.ApiDocApplication</mainClass>
  302. </manifest>
  303. </archive>
  304. </configuration>
  305. </plugin>
  306. <!-- copy dependencies to the lib directory -->
  307. <plugin>
  308. <artifactId>maven-dependency-plugin</artifactId>
  309. <executions>
  310. <execution>
  311. <phase>package</phase>
  312. <goals>
  313. <goal>copy-dependencies</goal>
  314. </goals>
  315. <configuration>
  316. <outputDirectory>${project.build.directory}/lib</outputDirectory>
  317. </configuration>
  318. </execution>
  319. </executions>
  320. </plugin>
  321. <!-- copy the generated documents -->
  322. <plugin>
  323. <artifactId>maven-resources-plugin</artifactId>
  324. <version>3.1.0</version>
  325. <executions>
  326. <execution>
  327. <id>copy-resources</id>
  328. <phase>prepare-package</phase>
  329. <goals>
  330. <goal>copy-resources</goal>
  331. </goals>
  332. <configuration>
  333. <outputDirectory>${project.build.outputDirectory}/static/docs</outputDirectory>
  334. <resources>
  335. <resource>
  336. <directory>${asciidoctor.html.output.directory}</directory>
  337. </resource>
  338. <resource>
  339. <directory>${asciidoctor.pdf.output.directory}</directory>
  340. </resource>
  341. </resources>
  342. </configuration>
  343. </execution>
  344. </executions>
  345. </plugin>
  346. </plugins>
  347. </build>
  348. <!--<build>-->
  349. <!--<plugins>-->
  350. <!--<plugin>-->
  351. <!--<groupId>org.springframework.boot</groupId>-->
  352. <!--<artifactId>spring-boot-maven-plugin</artifactId>-->
  353. <!--</plugin>-->
  354. <!--&lt;!&ndash; 添加docker-maven插件 &ndash;&gt;-->
  355. <!--<plugin>-->
  356. <!--<groupId>com.spotify</groupId>-->
  357. <!--<artifactId>docker-maven-plugin</artifactId>-->
  358. <!--<configuration>-->
  359. <!--<imageName>${docker.image.prefix}/${project.artifactId}:${project.version}</imageName>-->
  360. <!--<forceTags>true</forceTags>-->
  361. <!--&lt;!&ndash;镜像的FROM,使用压缩的小镜像&ndash;&gt;-->
  362. <!--<baseImage>frolvlad/alpine-oraclejre8:slim</baseImage>-->
  363. <!--<entryPoint>["java", "-jar", "-Xms256m", "-Xmx1024m", "-Duser.timezone=GMT+8", "/${project.build.finalName}.jar"]</entryPoint>-->
  364. <!--<resources>-->
  365. <!--<resource>-->
  366. <!--<targetPath>/</targetPath>-->
  367. <!--<directory>${project.build.directory}</directory>-->
  368. <!--<include>${project.build.finalName}.jar</include>-->
  369. <!--</resource>-->
  370. <!--</resources>-->
  371. <!--<serverId>docker-registry</serverId>-->
  372. <!--<registryUrl>http://192.168.2.236:5000/repository/diagbotcloud/</registryUrl>-->
  373. <!--</configuration>-->
  374. <!--</plugin>-->
  375. <!--</plugins>-->
  376. <!--</build>-->
  377. </project>