pom.xml 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392
  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. <!-- Security -->
  38. <dependency>
  39. <groupId>org.springframework.boot</groupId>
  40. <artifactId>spring-boot-starter-security</artifactId>
  41. </dependency>
  42. <dependency>
  43. <groupId>org.thymeleaf.extras</groupId>
  44. <artifactId>thymeleaf-extras-springsecurity4</artifactId>
  45. </dependency>
  46. <!-- Persistence -->
  47. <dependency>
  48. <groupId>org.springframework</groupId>
  49. <artifactId>spring-jdbc</artifactId>
  50. </dependency>
  51. <dependency>
  52. <groupId>org.springframework</groupId>
  53. <artifactId>spring-tx</artifactId>
  54. </dependency>
  55. <dependency>
  56. <groupId>org.springframework</groupId>
  57. <artifactId>spring-orm</artifactId>
  58. </dependency>
  59. <dependency>
  60. <groupId>org.hibernate</groupId>
  61. <artifactId>hibernate-entitymanager</artifactId>
  62. </dependency>
  63. <dependency>
  64. <groupId>org.hsqldb</groupId>
  65. <artifactId>hsqldb</artifactId>
  66. </dependency>
  67. <!-- Testing -->
  68. <dependency>
  69. <groupId>org.springframework.boot</groupId>
  70. <artifactId>spring-boot-starter-test</artifactId>
  71. <scope>test</scope>
  72. </dependency>
  73. <dependency>
  74. <groupId>com.jayway.jsonpath</groupId>
  75. <artifactId>json-path</artifactId>
  76. <scope>test</scope>
  77. </dependency>
  78. <dependency>
  79. <groupId>com.jayway.jsonpath</groupId>
  80. <artifactId>json-path-assert</artifactId>
  81. <scope>test</scope>
  82. </dependency>
  83. <dependency>
  84. <groupId>org.webjars</groupId>
  85. <artifactId>jasmine</artifactId>
  86. <version>${jasmine.version}</version>
  87. <scope>test</scope>
  88. </dependency>
  89. <dependency>
  90. <groupId>org.webjars</groupId>
  91. <artifactId>jquery-mockjax</artifactId>
  92. <version>1.5.3</version>
  93. <scope>test</scope>
  94. </dependency>
  95. <!-- Monitoring -->
  96. <dependency>
  97. <groupId>org.springframework.boot</groupId>
  98. <artifactId>spring-boot-starter-actuator</artifactId>
  99. </dependency>
  100. <!-- Hot swapping for dev purposes -->
  101. <dependency>
  102. <groupId>org.springframework.boot</groupId>
  103. <artifactId>spring-boot-devtools</artifactId>
  104. <optional>true</optional>
  105. </dependency>
  106. <!-- Webjars -->
  107. <dependency>
  108. <groupId>org.webjars</groupId>
  109. <artifactId>bootstrap</artifactId>
  110. <version>${bootstrap.version}</version>
  111. </dependency>
  112. <dependency>
  113. <groupId>org.webjars</groupId>
  114. <artifactId>jquery</artifactId>
  115. <version>${jquery.version}</version>
  116. </dependency>
  117. <dependency>
  118. <groupId>org.webjars</groupId>
  119. <artifactId>react</artifactId>
  120. <version>${react.version}</version>
  121. </dependency>
  122. <dependency>
  123. <groupId>org.webjars</groupId>
  124. <artifactId>marked</artifactId>
  125. <version>${marked.version}</version>
  126. </dependency>
  127. </dependencies>
  128. <build>
  129. <resources>
  130. <resource>
  131. <directory>${project.basedir}/src/main/resources</directory>
  132. </resource>
  133. </resources>
  134. <plugins>
  135. <plugin>
  136. <groupId>org.springframework.boot</groupId>
  137. <artifactId>spring-boot-maven-plugin</artifactId>
  138. </plugin>
  139. <plugin>
  140. <groupId>com.fizzed</groupId>
  141. <artifactId>fizzed-watcher-maven-plugin</artifactId>
  142. <version>1.0.6</version>
  143. <configuration>
  144. <watches>
  145. <watch>
  146. <excludes>
  147. <exclude>src/main/resources/static/js/bundle</exclude>
  148. <exclude>src/main/resources/static/js/jsx</exclude>
  149. </excludes>
  150. <recursive>false</recursive>
  151. <directory>src/main/resources/static/js</directory>
  152. </watch>
  153. <watch>
  154. <exclude>src/main/resources/static/css/bundle</exclude>
  155. <recursive>false</recursive>
  156. <directory>src/main/resources/static/css</directory>
  157. </watch>
  158. <watch>
  159. <directory>src/main/wro</directory>
  160. </watch>
  161. </watches>
  162. <goals>
  163. <goal>process-resources</goal>
  164. </goals>
  165. </configuration>
  166. </plugin>
  167. <!-- Resource optimization -->
  168. <plugin>
  169. <groupId>org.apache.maven.plugins</groupId>
  170. <artifactId>maven-antrun-plugin</artifactId>
  171. <executions>
  172. <execution>
  173. <phase>clean</phase>
  174. <goals>
  175. <goal>run</goal>
  176. </goals>
  177. <configuration>
  178. <target>
  179. <delete dir="${project.basedir}/src/main/resources/static/js/bundle" />
  180. <delete dir="${project.basedir}/src/main/resources/static/js/jsx" />
  181. <delete dir="${project.basedir}/src/main/resources/static/css/bundle" />
  182. <delete dir="${project.basedir}/src/test/resources/static/js/compiled" />
  183. </target>
  184. </configuration>
  185. </execution>
  186. </executions>
  187. </plugin>
  188. <plugin>
  189. <artifactId>maven-resources-plugin</artifactId>
  190. <executions>
  191. <execution>
  192. <!-- Serves *only* to filter the wro.xml so it can get an absolute
  193. path for the project -->
  194. <id>copy-resources</id>
  195. <phase>validate</phase>
  196. <goals>
  197. <goal>copy-resources</goal>
  198. </goals>
  199. <configuration>
  200. <outputDirectory>${basedir}/target/wro</outputDirectory>
  201. <resources>
  202. <resource>
  203. <directory>src/main/wro</directory>
  204. <filtering>true</filtering>
  205. </resource>
  206. </resources>
  207. </configuration>
  208. </execution>
  209. </executions>
  210. </plugin>
  211. <plugin>
  212. <groupId>uk.co.codezen</groupId>
  213. <artifactId>react-jsxtransformer-maven-plugin</artifactId>
  214. <version>1.0</version>
  215. <executions>
  216. <execution>
  217. <id>Compile resources</id>
  218. <phase>process-resources</phase>
  219. <goals>
  220. <goal>compile</goal>
  221. </goals>
  222. <configuration>
  223. <extension>jsx</extension>
  224. <sourcePath>
  225. ${project.basedir}/src/main/resources/static/js
  226. </sourcePath>
  227. <targetPath>
  228. ${project.basedir}/src/main/resources/static/js/jsx
  229. </targetPath>
  230. </configuration>
  231. </execution>
  232. <execution>
  233. <id>Compile test resources</id>
  234. <phase>process-test-resources</phase>
  235. <goals>
  236. <goal>compile</goal>
  237. </goals>
  238. <configuration>
  239. <extension>jsx</extension>
  240. <sourcePath>
  241. ${project.basedir}/src/test/resources/static/js
  242. </sourcePath>
  243. <targetPath>
  244. ${project.basedir}/src/test/resources/static/js/compiled
  245. </targetPath>
  246. </configuration>
  247. </execution>
  248. </executions>
  249. </plugin>
  250. <plugin>
  251. <groupId>ro.isdc.wro4j</groupId>
  252. <artifactId>wro4j-maven-plugin</artifactId>
  253. <version>1.7.9</version>
  254. <executions>
  255. <execution>
  256. <phase>process-resources</phase>
  257. <goals>
  258. <goal>run</goal>
  259. </goals>
  260. </execution>
  261. </executions>
  262. <configuration>
  263. <wroManagerFactory>ro.isdc.wro.maven.plugin.manager.factory.ConfigurableWroManagerFactory</wroManagerFactory>
  264. <cssDestinationFolder>${project.basedir}/src/main/resources/static/css/bundle</cssDestinationFolder>
  265. <jsDestinationFolder>${project.basedir}/src/main/resources/static/js/bundle</jsDestinationFolder>
  266. <wroFile>${project.build.directory}/wro/wro.xml</wroFile>
  267. <extraConfigFile>${project.basedir}/src/main/wro/wro.properties</extraConfigFile>
  268. </configuration>
  269. </plugin>
  270. <!-- Testing -->
  271. <plugin>
  272. <groupId>com.github.klieber</groupId>
  273. <artifactId>phantomjs-maven-plugin</artifactId>
  274. <version>0.7</version>
  275. <executions>
  276. <execution>
  277. <goals>
  278. <goal>install</goal>
  279. </goals>
  280. </execution>
  281. </executions>
  282. <configuration>
  283. <version>2.1.1</version>
  284. <skip>false</skip>
  285. </configuration>
  286. </plugin>
  287. <plugin>
  288. <groupId>com.github.searls</groupId>
  289. <artifactId>jasmine-maven-plugin</artifactId>
  290. <version>2.1</version>
  291. <executions>
  292. <execution>
  293. <goals>
  294. <goal>test</goal>
  295. </goals>
  296. </execution>
  297. </executions>
  298. <configuration>
  299. <webDriverClassName>org.openqa.selenium.phantomjs.PhantomJSDriver</webDriverClassName>
  300. <webDriverCapabilities>
  301. <capability>
  302. <name>phantomjs.binary.path</name>
  303. <value>${phantomjs.binary}</value>
  304. </capability>
  305. </webDriverCapabilities>
  306. <preloadSources>
  307. <preloadSource>/webjars/jquery.js</preloadSource>
  308. <preloadSource>/webjars/react-with-addons.js</preloadSource>
  309. <preloadSource>/webjars/react-dom.js</preloadSource>
  310. <preloadSource>/webjars/jquery.mockjax.js</preloadSource>
  311. <preloadSource>${project.basedir}/src/test/resources/jasmine/config.js</preloadSource>
  312. </preloadSources>
  313. <jsSrcDir>${project.basedir}/src/main/resources/static/js</jsSrcDir>
  314. <sourceIncludes>
  315. <include>**/*.js</include>
  316. </sourceIncludes>
  317. <sourceExcludes>
  318. <exclude>**/react-bootstrap.js</exclude>
  319. <exclude>**/app.render.js</exclude>
  320. </sourceExcludes>
  321. <jsTestSrcDir>${project.basedir}/src/test/resources/static/js</jsTestSrcDir>
  322. <specIncludes>
  323. <include>**/*.spec.js</include>
  324. </specIncludes>
  325. <customRunnerTemplate>${project.basedir}/src/test/resources/jasmine/ReactJsSpecRunner.htmltemplate</customRunnerTemplate>
  326. </configuration>
  327. </plugin>
  328. </plugins>
  329. <pluginManagement>
  330. <plugins>
  331. <plugin>
  332. <groupId>org.eclipse.m2e</groupId>
  333. <artifactId>lifecycle-mapping</artifactId>
  334. <version>1.0.0</version>
  335. <configuration>
  336. <lifecycleMappingMetadata>
  337. <pluginExecutions>
  338. <pluginExecution>
  339. <pluginExecutionFilter>
  340. <groupId>ro.isdc.wro4j</groupId>
  341. <artifactId>wro4j-maven-plugin</artifactId>
  342. <versionRange>[1.7.9,)</versionRange>
  343. <goals>
  344. <goal>jshint</goal>
  345. <goal>run</goal>
  346. </goals>
  347. </pluginExecutionFilter>
  348. <action>
  349. <ignore></ignore>
  350. </action>
  351. </pluginExecution>
  352. <pluginExecution>
  353. <pluginExecutionFilter>
  354. <groupId>uk.co.codezen</groupId>
  355. <artifactId>react-jsxtransformer-maven-plugin</artifactId>
  356. <versionRange>[1.0,)</versionRange>
  357. <goals>
  358. <goal>compile</goal>
  359. </goals>
  360. </pluginExecutionFilter>
  361. <action>
  362. <ignore></ignore>
  363. </action>
  364. </pluginExecution>
  365. <pluginExecution>
  366. <pluginExecutionFilter>
  367. <groupId>com.github.klieber</groupId>
  368. <artifactId>phantomjs-maven-plugin</artifactId>
  369. <versionRange>[0.7,)</versionRange>
  370. <goals>
  371. <goal>install</goal>
  372. </goals>
  373. </pluginExecutionFilter>
  374. <action>
  375. <ignore></ignore>
  376. </action>
  377. </pluginExecution>
  378. </pluginExecutions>
  379. </lifecycleMappingMetadata>
  380. </configuration>
  381. </plugin>
  382. </plugins>
  383. </pluginManagement>
  384. </build>
  385. </project>