pom.xml 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511
  1. <project xmlns="http://maven.apache.org/POM/4.0.0"
  2. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  3. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  4. <modelVersion>4.0.0</modelVersion>
  5. <groupId>net.sf.launch4j</groupId>
  6. <artifactId>launch4j</artifactId>
  7. <version>${launch4j.version}</version>
  8. <name>Launch4j</name>
  9. <description>Cross-platform Java executable wrapper for creating lightweight Windows native EXEs. Provides advanced JRE search, application startup configuration and better user experience.</description>
  10. <url>http://sourceforge.net/projects/launch4j/</url>
  11. <licenses>
  12. <license>
  13. <name>BSD 3-Clause License</name>
  14. <url>http://opensource.org/licenses/BSD-3-Clause</url>
  15. <comments>Launch4j is licensed under the BSD 3-Clause License.</comments>
  16. </license>
  17. <license>
  18. <name>MIT License</name>
  19. <url>http://www.opensource.org/licenses/mit-license.php</url>
  20. <comments>Launch4j code (head) which is attached to the wrapped jars is licensed under the MIT License.</comments>
  21. </license>
  22. </licenses>
  23. <developers>
  24. <developer>
  25. <name>Grzegorz Kowal</name>
  26. <url>http://sourceforge.net/u/grzegok/profile/</url>
  27. </developer>
  28. </developers>
  29. <scm>
  30. <connection>scm:git:http://git.code.sf.net/p/launch4j/git</connection>
  31. <developerConnection>scm:git:http://git.code.sf.net/p/launch4j/git</developerConnection>
  32. <url>http://sourceforge.net/p/launch4j/git/ci/master/tree/</url>
  33. </scm>
  34. <distributionManagement>
  35. <snapshotRepository>
  36. <id>ossrh</id>
  37. <url>https://oss.sonatype.org/content/repositories/snapshots</url>
  38. </snapshotRepository>
  39. </distributionManagement>
  40. <properties>
  41. <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  42. <versionNumber>${launch4j.version}.0.0</versionNumber>
  43. <version>${launch4j.version}</version>
  44. </properties>
  45. <dependencies>
  46. <dependency>
  47. <groupId>commons-beanutils</groupId>
  48. <artifactId>commons-beanutils</artifactId>
  49. <exclusions>
  50. <exclusion>
  51. <artifactId>commons-collections</artifactId>
  52. <groupId>commons-collections</groupId>
  53. </exclusion>
  54. </exclusions>
  55. <version>1.9.4</version>
  56. </dependency>
  57. <dependency>
  58. <groupId>commons-logging</groupId>
  59. <artifactId>commons-logging</artifactId>
  60. <version>1.2</version>
  61. </dependency>
  62. <dependency>
  63. <groupId>net.java.abeille</groupId>
  64. <artifactId>abeille</artifactId>
  65. <version>3.0</version>
  66. <exclusions>
  67. <exclusion>
  68. <artifactId>colt</artifactId>
  69. <groupId>colt</groupId>
  70. </exclusion>
  71. <exclusion>
  72. <artifactId>
  73. com.springsource.org.apache.batik.ext.awt
  74. </artifactId>
  75. <groupId>org.apache.batik</groupId>
  76. </exclusion>
  77. <exclusion>
  78. <artifactId>
  79. com.springsource.org.apache.batik.util
  80. </artifactId>
  81. <groupId>org.apache.batik</groupId>
  82. </exclusion>
  83. <exclusion>
  84. <artifactId>dom4j</artifactId>
  85. <groupId>dom4j</groupId>
  86. </exclusion>
  87. <exclusion>
  88. <artifactId>dsol-xml</artifactId>
  89. <groupId>dsol</groupId>
  90. </exclusion>
  91. <exclusion>
  92. <artifactId>javahelp</artifactId>
  93. <groupId>javax.help</groupId>
  94. </exclusion>
  95. <exclusion>
  96. <artifactId>jfreechart</artifactId>
  97. <groupId>jfree</groupId>
  98. </exclusion>
  99. <exclusion>
  100. <artifactId>jcommon</artifactId>
  101. <groupId>jfree</groupId>
  102. </exclusion>
  103. <exclusion>
  104. <artifactId>mahout-collections</artifactId>
  105. <groupId>org.apache.mahout</groupId>
  106. </exclusion>
  107. <exclusion>
  108. <artifactId>optimization</artifactId>
  109. <groupId>com.github.rwl</groupId>
  110. </exclusion>
  111. </exclusions>
  112. </dependency>
  113. <dependency>
  114. <groupId>com.jgoodies</groupId>
  115. <artifactId>jgoodies-common</artifactId>
  116. <version>1.7.0</version>
  117. </dependency>
  118. <dependency>
  119. <groupId>com.jgoodies</groupId>
  120. <artifactId>forms</artifactId>
  121. <version>1.2.1</version>
  122. </dependency>
  123. <dependency>
  124. <groupId>com.formdev</groupId>
  125. <artifactId>flatlaf</artifactId>
  126. <version>1.0</version>
  127. </dependency>
  128. <dependency>
  129. <groupId>com.thoughtworks.xstream</groupId>
  130. <artifactId>xstream</artifactId>
  131. <version>1.4.15</version>
  132. </dependency>
  133. <dependency>
  134. <groupId>org.apache.ant</groupId>
  135. <artifactId>ant</artifactId>
  136. <version>1.10.9</version>
  137. </dependency>
  138. </dependencies>
  139. <build>
  140. <sourceDirectory>src</sourceDirectory>
  141. <resources>
  142. <resource>
  143. <directory>src</directory>
  144. <excludes>
  145. <exclude>**/*.java</exclude>
  146. </excludes>
  147. </resource>
  148. </resources>
  149. <plugins>
  150. <plugin>
  151. <artifactId>maven-compiler-plugin</artifactId>
  152. <version>3.8.1</version>
  153. <configuration>
  154. <source>1.8</source>
  155. <target>1.8</target>
  156. </configuration>
  157. </plugin>
  158. <plugin>
  159. <groupId>com.github.taxone.plugins</groupId>
  160. <artifactId>classpath-maven-plugin</artifactId>
  161. <version>1.0.0</version>
  162. <executions>
  163. <execution>
  164. <id>set-classpath-property</id>
  165. <phase>prepare-package</phase>
  166. <goals>
  167. <goal>setClassPath</goal>
  168. </goals>
  169. <configuration>
  170. <classpathPrefix>lib/</classpathPrefix>
  171. </configuration>
  172. </execution>
  173. </executions>
  174. </plugin>
  175. <plugin>
  176. <groupId>org.apache.maven.plugins</groupId>
  177. <artifactId>maven-jar-plugin</artifactId>
  178. <version>2.5</version>
  179. <executions>
  180. <execution>
  181. <id>default-jar</id>
  182. <phase>package</phase>
  183. <goals>
  184. <goal>jar</goal>
  185. </goals>
  186. <configuration>
  187. <archive>
  188. <manifest>
  189. <mainClass>net.sf.launch4j.Main</mainClass>
  190. </manifest>
  191. <manifestEntries>
  192. <Class-Path>. ${taxone.classpath.propertyName}</Class-Path>
  193. </manifestEntries>
  194. </archive>
  195. </configuration>
  196. </execution>
  197. <execution>
  198. <id>core-jar</id>
  199. <phase>package</phase>
  200. <goals>
  201. <goal>jar</goal>
  202. </goals>
  203. <configuration>
  204. <finalName>${project.build.finalName}</finalName>
  205. <excludes>
  206. <exclude>net/sf/launch4j/form/</exclude>
  207. <exclude>net/sf/launch4j/formimpl</exclude>
  208. </excludes>
  209. <classifier>core</classifier>
  210. </configuration>
  211. </execution>
  212. </executions>
  213. </plugin>
  214. <plugin>
  215. <artifactId>maven-assembly-plugin</artifactId>
  216. <version>2.4.1</version>
  217. <executions>
  218. <execution>
  219. <id>assemble-workdir</id>
  220. <phase>package</phase>
  221. <goals>
  222. <goal>attached</goal>
  223. </goals>
  224. <configuration>
  225. <descriptors>
  226. <descriptor>assembly/assemble-linux.xml</descriptor>
  227. <descriptor>assembly/assemble-linux64.xml</descriptor>
  228. <descriptor>assembly/assemble-win32.xml</descriptor>
  229. <descriptor>assembly/assemble-mac.xml</descriptor>
  230. </descriptors>
  231. </configuration>
  232. </execution>
  233. <execution>
  234. <id>assemble-distrib</id>
  235. <phase>package</phase>
  236. <goals>
  237. <goal>single</goal>
  238. </goals>
  239. <configuration>
  240. <finalName>lib</finalName>
  241. <outputDirectory>${basedir}</outputDirectory>
  242. <appendAssemblyId>false</appendAssemblyId>
  243. <descriptors>
  244. <descriptor>assembly/assemble-dist.xml</descriptor>
  245. </descriptors>
  246. </configuration>
  247. </execution>
  248. </executions>
  249. </plugin>
  250. <plugin>
  251. <artifactId>maven-resources-plugin</artifactId>
  252. <version>2.6</version>
  253. <executions>
  254. <execution>
  255. <id>copy-resources</id>
  256. <phase>package</phase>
  257. <goals>
  258. <goal>copy-resources</goal>
  259. </goals>
  260. <configuration>
  261. <outputDirectory>${basedir}</outputDirectory>
  262. <resources>
  263. <resource>
  264. <directory>target</directory>
  265. <includes>
  266. <include>${project.build.finalName}.jar</include>
  267. </includes>
  268. </resource>
  269. </resources>
  270. </configuration>
  271. </execution>
  272. </executions>
  273. </plugin>
  274. <plugin>
  275. <artifactId>maven-clean-plugin</artifactId>
  276. <version>2.6</version>
  277. <configuration>
  278. <filesets>
  279. <fileset>
  280. <directory>${basedir}</directory>
  281. <includes>
  282. <include>${project.build.finalName}.jar</include>
  283. </includes>
  284. </fileset>
  285. </filesets>
  286. </configuration>
  287. </plugin>
  288. </plugins>
  289. </build>
  290. <profiles>
  291. <profile>
  292. <id>full-release</id>
  293. <build>
  294. <plugins>
  295. <plugin>
  296. <groupId>org.apache.maven.plugins</groupId>
  297. <artifactId>maven-source-plugin</artifactId>
  298. <version>2.3</version>
  299. <executions>
  300. <execution>
  301. <id>attach-sources</id>
  302. <goals>
  303. <goal>jar-no-fork</goal>
  304. </goals>
  305. </execution>
  306. </executions>
  307. </plugin>
  308. <plugin>
  309. <groupId>org.apache.maven.plugins</groupId>
  310. <artifactId>maven-javadoc-plugin</artifactId>
  311. <version>3.2.0</version>
  312. <configuration>
  313. <doclint>none</doclint>
  314. </configuration>
  315. <executions>
  316. <execution>
  317. <id>attach-javadocs</id>
  318. <goals>
  319. <goal>jar</goal>
  320. </goals>
  321. </execution>
  322. </executions>
  323. </plugin>
  324. <plugin>
  325. <groupId>org.apache.maven.plugins</groupId>
  326. <artifactId>maven-gpg-plugin</artifactId>
  327. <version>1.5</version>
  328. <executions>
  329. <execution>
  330. <id>sign-artifacts</id>
  331. <goals>
  332. <goal>sign</goal>
  333. </goals>
  334. </execution>
  335. </executions>
  336. </plugin>
  337. <plugin>
  338. <groupId>org.sonatype.plugins</groupId>
  339. <artifactId>nexus-staging-maven-plugin</artifactId>
  340. <version>1.6.2</version>
  341. <extensions>true</extensions>
  342. <configuration>
  343. <serverId>ossrh</serverId>
  344. <nexusUrl>https://oss.sonatype.org/</nexusUrl>
  345. <!-- Release has to be executed manually -->
  346. <autoReleaseAfterClose>false</autoReleaseAfterClose>
  347. </configuration>
  348. </plugin>
  349. </plugins>
  350. </build>
  351. </profile>
  352. <!-- Macosx-x86 Profile -->
  353. <profile>
  354. <id>macosx-x86</id>
  355. <properties>
  356. <bin.dir>bin-macosx-x86</bin.dir>
  357. </properties>
  358. </profile>
  359. <!-- Linux Profile -->
  360. <profile>
  361. <id>linux</id>
  362. <properties>
  363. <bin.dir>bin-linux</bin.dir>
  364. </properties>
  365. </profile>
  366. <!-- Windows Profile -->
  367. <profile>
  368. <id>win32</id>
  369. <properties>
  370. <bin.dir>bin-win32</bin.dir>
  371. </properties>
  372. <build>
  373. <plugins>
  374. <!-- Creates Launch4j executable -->
  375. <plugin>
  376. <groupId>com.akathist.maven.plugins.launch4j</groupId>
  377. <artifactId>launch4j-maven-plugin</artifactId>
  378. <version>1.7.25</version>
  379. <executions>
  380. <execution>
  381. <id>launch4j</id>
  382. <phase>package</phase>
  383. <goals>
  384. <goal>launch4j</goal>
  385. </goals>
  386. <configuration>
  387. <headerType>gui</headerType>
  388. <dontWrapJar>true</dontWrapJar>
  389. <jar>${project.build.finalName}.jar</jar>
  390. <outfile>launch4j.exe</outfile>
  391. <errTitle>launch4j</errTitle>
  392. <chdir>.</chdir>
  393. <stayAlive>false</stayAlive>
  394. <jre>
  395. <minVersion>1.8.0</minVersion>
  396. </jre>
  397. <versionInfo>
  398. <fileVersion>${versionNumber}</fileVersion>
  399. <txtFileVersion>${version}</txtFileVersion>
  400. <productVersion>${versionNumber}</productVersion>
  401. <txtProductVersion>${version}</txtProductVersion>
  402. <fileDescription>Cross-platform Java application wrapper</fileDescription>
  403. <copyright>Copyright (C) 2004, 2017 Grzegorz Kowal</copyright>
  404. <productName>launch4j</productName>
  405. <companyName>http://launch4j.sourceforge.net/</companyName>
  406. <internalName>GUI launcher</internalName>
  407. <originalFilename>launch4j.exe</originalFilename>
  408. </versionInfo>
  409. </configuration>
  410. </execution>
  411. </executions>
  412. </plugin>
  413. </plugins>
  414. </build>
  415. </profile>
  416. <!-- Generic distribution profile -->
  417. <profile>
  418. <id>dist</id>
  419. <build>
  420. <plugins>
  421. <!-- Clean -->
  422. <plugin>
  423. <artifactId>maven-clean-plugin</artifactId>
  424. <version>2.6</version>
  425. <configuration>
  426. <filesets>
  427. <fileset>
  428. <directory>${basedir}/bin</directory>
  429. <includes>
  430. <incude>*</incude>
  431. </includes>
  432. <excludes>
  433. <exclude>COPYING</exclude>
  434. </excludes>
  435. </fileset>
  436. <fileset>
  437. <directory>${basedir}</directory>
  438. <includes>
  439. <incude>launch4j.exe</incude>
  440. </includes>
  441. </fileset>
  442. <fileset>
  443. <directory>${basedir}</directory>
  444. <includes>
  445. <incude>lib/</incude>
  446. </includes>
  447. </fileset>
  448. </filesets>
  449. </configuration>
  450. </plugin>
  451. <!-- Copies executables to "bin" directory -->
  452. <plugin>
  453. <artifactId>maven-resources-plugin</artifactId>
  454. <version>2.6</version>
  455. <executions>
  456. <execution>
  457. <id>copy-binutils</id>
  458. <phase>prepare-package</phase>
  459. <goals>
  460. <goal>copy-resources</goal>
  461. </goals>
  462. <configuration>
  463. <outputDirectory>${basedir}/bin</outputDirectory>
  464. <resources>
  465. <resource>
  466. <directory>${basedir}/bin/${bin.dir}</directory>
  467. </resource>
  468. </resources>
  469. </configuration>
  470. </execution>
  471. </executions>
  472. </plugin>
  473. <!-- Change Permissions -->
  474. <plugin>
  475. <artifactId>maven-antrun-plugin</artifactId>
  476. <version>1.7</version>
  477. <executions>
  478. <execution>
  479. <phase>package</phase>
  480. <configuration>
  481. <target>
  482. <chmod file="launch4j" perm="+x" />
  483. <chmod file="bin/windres" perm="+x" />
  484. <chmod file="bin/ld" perm="+x" />
  485. </target>
  486. </configuration>
  487. <goals>
  488. <goal>run</goal>
  489. </goals>
  490. </execution>
  491. </executions>
  492. </plugin>
  493. </plugins>
  494. </build>
  495. </profile>
  496. </profiles>
  497. </project>