pom.xml 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349
  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. <modelVersion>4.0.0</modelVersion>
  4. <groupId>com.opengroupe.cloud.saas</groupId>
  5. <artifactId>catalog-ui</artifactId>
  6. <version>1.0.0-SNAPSHOT</version>
  7. <name>UI service project</name>
  8. <description>Default tools to build UI BFF</description>
  9. <packaging>jar</packaging>
  10. <url>http://www.open-groupe.com</url>
  11. <parent>
  12. <groupId>org.springframework.boot</groupId>
  13. <artifactId>spring-boot-starter-parent</artifactId>
  14. <version>1.3.3.RELEASE</version>
  15. </parent>
  16. <properties>
  17. <java.version>1.8</java.version>
  18. <jasmine.version>2.4.1</jasmine.version>
  19. <jasmine-ajax.version>3.2.0</jasmine-ajax.version>
  20. <bootstrap.version>3.3.6</bootstrap.version>
  21. <jquery.version>2.2.1</jquery.version>
  22. <react.version>0.14.7</react.version>
  23. <marked.version>0.3.2-1</marked.version>
  24. <marked-lib.version>0.3.2</marked-lib.version>
  25. </properties>
  26. <dependencies>
  27. <!-- Spring Boot Core -->
  28. <dependency>
  29. <groupId>org.springframework.boot</groupId>
  30. <artifactId>spring-boot-starter-web</artifactId>
  31. </dependency>
  32. <!-- View templating -->
  33. <dependency>
  34. <groupId>org.springframework.boot</groupId>
  35. <artifactId>spring-boot-starter-thymeleaf</artifactId>
  36. </dependency>
  37. <!-- Testing -->
  38. <dependency>
  39. <groupId>org.springframework.boot</groupId>
  40. <artifactId>spring-boot-starter-test</artifactId>
  41. <scope>test</scope>
  42. </dependency>
  43. <dependency>
  44. <groupId>com.jayway.jsonpath</groupId>
  45. <artifactId>json-path</artifactId>
  46. <scope>test</scope>
  47. </dependency>
  48. <dependency>
  49. <groupId>com.jayway.jsonpath</groupId>
  50. <artifactId>json-path-assert</artifactId>
  51. <scope>test</scope>
  52. </dependency>
  53. <dependency>
  54. <groupId>org.webjars</groupId>
  55. <artifactId>jasmine</artifactId>
  56. <version>${jasmine.version}</version>
  57. <scope>test</scope>
  58. </dependency>
  59. <dependency>
  60. <groupId>org.webjars</groupId>
  61. <artifactId>jquery-mockjax</artifactId>
  62. <version>1.5.3</version>
  63. <scope>test</scope>
  64. </dependency>
  65. <!-- Monitoring -->
  66. <dependency>
  67. <groupId>org.springframework.boot</groupId>
  68. <artifactId>spring-boot-starter-actuator</artifactId>
  69. </dependency>
  70. <!-- Hot swapping for dev purposes -->
  71. <dependency>
  72. <groupId>org.springframework.boot</groupId>
  73. <artifactId>spring-boot-devtools</artifactId>
  74. <optional>true</optional>
  75. </dependency>
  76. <!-- Webjars -->
  77. <dependency>
  78. <groupId>org.webjars</groupId>
  79. <artifactId>bootstrap</artifactId>
  80. <version>${bootstrap.version}</version>
  81. </dependency>
  82. <dependency>
  83. <groupId>org.webjars</groupId>
  84. <artifactId>jquery</artifactId>
  85. <version>${jquery.version}</version>
  86. </dependency>
  87. <dependency>
  88. <groupId>org.webjars</groupId>
  89. <artifactId>react</artifactId>
  90. <version>${react.version}</version>
  91. </dependency>
  92. <dependency>
  93. <groupId>org.webjars</groupId>
  94. <artifactId>marked</artifactId>
  95. <version>${marked.version}</version>
  96. </dependency>
  97. </dependencies>
  98. <build>
  99. <resources>
  100. <resource>
  101. <directory>${project.basedir}/src/main/resources</directory>
  102. </resource>
  103. </resources>
  104. <plugins>
  105. <plugin>
  106. <groupId>org.springframework.boot</groupId>
  107. <artifactId>spring-boot-maven-plugin</artifactId>
  108. </plugin>
  109. <plugin>
  110. <groupId>com.fizzed</groupId>
  111. <artifactId>fizzed-watcher-maven-plugin</artifactId>
  112. <version>1.0.6</version>
  113. <configuration>
  114. <watches>
  115. <watch>
  116. <directory>src/main/webapp/js</directory>
  117. </watch>
  118. <watch>
  119. <directory>src/main/wro</directory>
  120. </watch>
  121. </watches>
  122. <goals>
  123. <goal>process-resources</goal>
  124. </goals>
  125. </configuration>
  126. </plugin>
  127. <!-- Resource optimization -->
  128. <plugin>
  129. <groupId>org.apache.maven.plugins</groupId>
  130. <artifactId>maven-antrun-plugin</artifactId>
  131. <executions>
  132. <execution>
  133. <phase>clean</phase>
  134. <goals>
  135. <goal>run</goal>
  136. </goals>
  137. <configuration>
  138. <target>
  139. <delete dir="${project.basedir}/src/main/resources/static" />
  140. <delete dir="${project.basedir}/src/test/resources/static/js/compiled" />
  141. </target>
  142. </configuration>
  143. </execution>
  144. </executions>
  145. </plugin>
  146. <plugin>
  147. <artifactId>maven-resources-plugin</artifactId>
  148. <executions>
  149. <execution>
  150. <!-- Serves *only* to filter the wro.xml so it can get an absolute
  151. path for the project -->
  152. <id>copy-resources</id>
  153. <phase>validate</phase>
  154. <goals>
  155. <goal>copy-resources</goal>
  156. </goals>
  157. <configuration>
  158. <outputDirectory>${basedir}/target/wro</outputDirectory>
  159. <resources>
  160. <resource>
  161. <directory>src/main/wro</directory>
  162. <filtering>true</filtering>
  163. </resource>
  164. </resources>
  165. </configuration>
  166. </execution>
  167. </executions>
  168. </plugin>
  169. <plugin>
  170. <groupId>uk.co.codezen</groupId>
  171. <artifactId>react-jsxtransformer-maven-plugin</artifactId>
  172. <version>1.0</version>
  173. <executions>
  174. <execution>
  175. <id>Compile resources</id>
  176. <phase>process-resources</phase>
  177. <goals>
  178. <goal>compile</goal>
  179. </goals>
  180. <configuration>
  181. <extension>jsx</extension>
  182. <sourcePath>
  183. ${project.basedir}/src/main/webapp/js
  184. </sourcePath>
  185. <targetPath>
  186. ${project.basedir}/src/main/resources/static/js
  187. </targetPath>
  188. </configuration>
  189. </execution>
  190. <execution>
  191. <id>Compile test resources</id>
  192. <phase>process-test-resources</phase>
  193. <goals>
  194. <goal>compile</goal>
  195. </goals>
  196. <configuration>
  197. <extension>jsx</extension>
  198. <sourcePath>
  199. ${project.basedir}/src/test/resources/static/js
  200. </sourcePath>
  201. <targetPath>
  202. ${project.basedir}/src/test/resources/static/js/compiled
  203. </targetPath>
  204. </configuration>
  205. </execution>
  206. </executions>
  207. </plugin>
  208. <plugin>
  209. <groupId>ro.isdc.wro4j</groupId>
  210. <artifactId>wro4j-maven-plugin</artifactId>
  211. <version>1.7.9</version>
  212. <executions>
  213. <execution>
  214. <phase>process-resources</phase>
  215. <goals>
  216. <goal>run</goal>
  217. </goals>
  218. </execution>
  219. </executions>
  220. <configuration>
  221. <wroManagerFactory>ro.isdc.wro.maven.plugin.manager.factory.ConfigurableWroManagerFactory</wroManagerFactory>
  222. <cssDestinationFolder>${project.basedir}/src/main/resources/static/css</cssDestinationFolder>
  223. <jsDestinationFolder>${project.basedir}/src/main/resources/static/js</jsDestinationFolder>
  224. <wroFile>${project.build.directory}/wro/wro.xml</wroFile>
  225. <extraConfigFile>${project.basedir}/src/main/wro/wro.properties</extraConfigFile>
  226. </configuration>
  227. </plugin>
  228. <!-- Testing -->
  229. <plugin>
  230. <groupId>com.github.klieber</groupId>
  231. <artifactId>phantomjs-maven-plugin</artifactId>
  232. <version>0.7</version>
  233. <executions>
  234. <execution>
  235. <goals>
  236. <goal>install</goal>
  237. </goals>
  238. </execution>
  239. </executions>
  240. <configuration>
  241. <version>2.1.1</version>
  242. <skip>false</skip>
  243. </configuration>
  244. </plugin>
  245. <plugin>
  246. <groupId>com.github.searls</groupId>
  247. <artifactId>jasmine-maven-plugin</artifactId>
  248. <version>2.1</version>
  249. <executions>
  250. <execution>
  251. <goals>
  252. <goal>test</goal>
  253. </goals>
  254. </execution>
  255. </executions>
  256. <configuration>
  257. <webDriverClassName>org.openqa.selenium.phantomjs.PhantomJSDriver</webDriverClassName>
  258. <webDriverCapabilities>
  259. <capability>
  260. <name>phantomjs.binary.path</name>
  261. <value>${phantomjs.binary}</value>
  262. </capability>
  263. </webDriverCapabilities>
  264. <preloadSources>
  265. <preloadSource>/webjars/jquery.js</preloadSource>
  266. <preloadSource>/webjars/react-with-addons.js</preloadSource>
  267. <preloadSource>/webjars/react-dom.js</preloadSource>
  268. <preloadSource>/webjars/jquery.mockjax.js</preloadSource>
  269. <preloadSource>${project.basedir}/src/test/resources/jasmine/config.js</preloadSource>
  270. </preloadSources>
  271. <jsSrcDir>${project.basedir}/src/main/resources/static/js</jsSrcDir>
  272. <sourceIncludes>
  273. <include>**/*.js</include>
  274. </sourceIncludes>
  275. <sourceExcludes>
  276. <exclude>**/react-bootstrap.js</exclude>
  277. <exclude>**/app.render.js</exclude>
  278. </sourceExcludes>
  279. <jsTestSrcDir>${project.basedir}/src/test/resources/static/js</jsTestSrcDir>
  280. <specIncludes>
  281. <include>**/*.spec.js</include>
  282. </specIncludes>
  283. <customRunnerTemplate>${project.basedir}/src/test/resources/jasmine/ReactJsSpecRunner.htmltemplate</customRunnerTemplate>
  284. </configuration>
  285. </plugin>
  286. </plugins>
  287. <pluginManagement>
  288. <plugins>
  289. <plugin>
  290. <groupId>org.eclipse.m2e</groupId>
  291. <artifactId>lifecycle-mapping</artifactId>
  292. <version>1.0.0</version>
  293. <configuration>
  294. <lifecycleMappingMetadata>
  295. <pluginExecutions>
  296. <pluginExecution>
  297. <pluginExecutionFilter>
  298. <groupId>ro.isdc.wro4j</groupId>
  299. <artifactId>wro4j-maven-plugin</artifactId>
  300. <versionRange>[1.7.9,)</versionRange>
  301. <goals>
  302. <goal>jshint</goal>
  303. <goal>run</goal>
  304. </goals>
  305. </pluginExecutionFilter>
  306. <action>
  307. <ignore></ignore>
  308. </action>
  309. </pluginExecution>
  310. <pluginExecution>
  311. <pluginExecutionFilter>
  312. <groupId>uk.co.codezen</groupId>
  313. <artifactId>react-jsxtransformer-maven-plugin</artifactId>
  314. <versionRange>[1.0,)</versionRange>
  315. <goals>
  316. <goal>compile</goal>
  317. </goals>
  318. </pluginExecutionFilter>
  319. <action>
  320. <ignore></ignore>
  321. </action>
  322. </pluginExecution>
  323. <pluginExecution>
  324. <pluginExecutionFilter>
  325. <groupId>com.github.klieber</groupId>
  326. <artifactId>phantomjs-maven-plugin</artifactId>
  327. <versionRange>[0.7,)</versionRange>
  328. <goals>
  329. <goal>install</goal>
  330. </goals>
  331. </pluginExecutionFilter>
  332. <action>
  333. <ignore></ignore>
  334. </action>
  335. </pluginExecution>
  336. </pluginExecutions>
  337. </lifecycleMappingMetadata>
  338. </configuration>
  339. </plugin>
  340. </plugins>
  341. </pluginManagement>
  342. </build>
  343. </project>