OSDN Git Service

18bcb6eebf38e592b35533307bce58239155fdb8
[charactermanaj/CharacterManaJ.git] / pom.xml
1 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\r
2         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">\r
3         <modelVersion>4.0.0</modelVersion>\r
4 \r
5         <groupId>jp.seraphyware.charactermanaj</groupId>\r
6         <artifactId>CharacterManaJ</artifactId>\r
7         <version>1.0</version>\r
8 \r
9         <url>https://osdn.net/projects/charactermanaj/</url>\r
10 \r
11         <properties>\r
12                 <appname>CharacterManaJ</appname>\r
13                 <exename>${appname}.exe</exename>\r
14                 <mainClass>charactermanaj.CharacterManaJ</mainClass>\r
15                 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>\r
16                 <maven.compiler.source>1.5</maven.compiler.source>\r
17                 <maven.compiler.target>1.5</maven.compiler.target>\r
18                 <maven.build.timestamp.format>yyyy-MM-dd'T'HH:mm:ss'Z'</maven.build.timestamp.format>\r
19         </properties>\r
20 \r
21         <dependencies>\r
22                 <!-- https://mvnrepository.com/artifact/com.apple/AppleJavaExtensions -->\r
23                 <dependency>\r
24                         <groupId>com.apple</groupId>\r
25                         <artifactId>AppleJavaExtensions</artifactId>\r
26                         <version>1.4</version>\r
27                         <scope>provided</scope>\r
28                 </dependency>\r
29                 <!-- テスト -->\r
30                 <dependency>\r
31                         <groupId>junit</groupId>\r
32                         <artifactId>junit</artifactId>\r
33                         <version>4.11</version>\r
34                         <scope>test</scope>\r
35                 </dependency>\r
36                 <!-- テストモック https://mvnrepository.com/artifact/org.mockito/mockito-all -->\r
37                 <dependency>\r
38                         <groupId>org.mockito</groupId>\r
39                         <artifactId>mockito-all</artifactId>\r
40                         <version>1.10.19</version>\r
41                         <scope>test</scope>\r
42                 </dependency>\r
43         </dependencies>\r
44 \r
45         <build>\r
46                 <plugins>\r
47                         <!-- プロパティの参照 -->\r
48                         <plugin>\r
49                                 <groupId>org.codehaus.mojo</groupId>\r
50                                 <artifactId>properties-maven-plugin</artifactId>\r
51                                 <version>1.0.0</version>\r
52                                 <executions>\r
53                                         <execution>\r
54                                                 <phase>initialize</phase>\r
55                                                 <goals>\r
56                                                         <goal>read-project-properties</goal>\r
57                                                 </goals>\r
58                                                 <configuration>\r
59                                                         <files>\r
60                                                                 <file>src/main/resources/version.properties</file>\r
61                                                         </files>\r
62                                                 </configuration>\r
63                                         </execution>\r
64                                 </executions>\r
65                         </plugin>\r
66                         <plugin>\r
67                                 <!-- コンパイラープラグイン -->\r
68                                 <groupId>org.apache.maven.plugins</groupId>\r
69                                 <artifactId>maven-compiler-plugin</artifactId>\r
70                                 <version>3.1</version>\r
71                                 <configuration>\r
72                                         <source>${maven.compiler.source}</source>\r
73                                         <target>${maven.compiler.target}</target>\r
74                                         <compilerArgument>-Xlint:all</compilerArgument>\r
75                                 </configuration>\r
76                         </plugin>\r
77                         <plugin>\r
78                                 <!-- 実行可能jar本体のパッケージを行う (package時) -->\r
79                                 <groupId>org.apache.maven.plugins</groupId>\r
80                                 <artifactId>maven-jar-plugin</artifactId>\r
81                                 <version>2.6</version>\r
82                                 <configuration>\r
83                                         <finalName>${project.artifactId}</finalName>\r
84                                         <archive>\r
85                                                 <manifest>\r
86                                                         <!-- 依存ライブラリ/lib/*.jarをクラスパスに追加する -->\r
87                                                         <addClasspath>true</addClasspath>\r
88                                                         <classpathPrefix>lib/</classpathPrefix>\r
89                                                         <mainClass>${mainClass}</mainClass>\r
90                                                         <addDefaultImplementationEntries>true</addDefaultImplementationEntries>\r
91                                                         <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>\r
92                                                 </manifest>\r
93                                                 <manifestEntries>\r
94                                                         <!-- 起動時のスプラッシュ画像 -->\r
95                                                         <SplashScreen-Image>splash.png</SplashScreen-Image>\r
96                                                         <Built-By>${vendor}</Built-By>\r
97                                                         <Build-At>${maven.build.timestamp}</Build-At>\r
98                                                         <Implementation-Vendor><![CDATA[Copyright (C) 2010 ${vendor}]]></Implementation-Vendor>\r
99                                                 </manifestEntries>\r
100                                         </archive>\r
101                                 </configuration>\r
102                         </plugin>\r
103                         <plugin>\r
104                                 <!-- 依存ライブラリをターゲットのlibフォルダ下にコピーする(package時) -->\r
105                                 <groupId>org.apache.maven.plugins</groupId>\r
106                                 <artifactId>maven-dependency-plugin</artifactId>\r
107                                 <version>2.10</version>\r
108                                 <executions>\r
109                                         <execution>\r
110                                                 <id>copyLibs</id>\r
111                                                 <phase>package</phase>\r
112                                                 <goals>\r
113                                                         <goal>copy-dependencies</goal>\r
114                                                 </goals>\r
115                                                 <configuration>\r
116                                                         <outputDirectory>\r
117                                                                 ${project.build.directory}/lib\r
118                                                         </outputDirectory>\r
119                                                         <includeScope>runtime</includeScope>\r
120                                                 </configuration>\r
121                                         </execution>\r
122                                 </executions>\r
123                         </plugin>\r
124 \r
125                         <plugin>\r
126                                 <!-- リソースコピープラグイン -->\r
127                                 <artifactId>maven-resources-plugin</artifactId>\r
128                                 <version>2.7</version>\r
129                                 <executions>\r
130                                         <execution>\r
131                                                 <id>copy-resources</id>\r
132                                                 <phase>validate</phase>\r
133                                                 <goals>\r
134                                                         <goal>copy-resources</goal>\r
135                                                 </goals>\r
136                                                 <configuration>\r
137                                                         <outputDirectory>${basedir}/target/conf</outputDirectory>\r
138                                                         <resources>\r
139                                                                 <resource>\r
140                                                                         <directory>conf</directory>\r
141                                                                         <filtering>false</filtering>\r
142                                                                 </resource>\r
143                                                         </resources>\r
144                                                 </configuration>\r
145                                         </execution>\r
146                                         <execution>\r
147                                                 <id>copy-ini-resources</id>\r
148                                                 <phase>package</phase>\r
149                                                 <goals>\r
150                                                         <goal>copy-resources</goal>\r
151                                                 </goals>\r
152                                                 <configuration>\r
153                                                         <outputDirectory>${basedir}/target</outputDirectory>\r
154                                                         <resources>\r
155                                                                 <resource>\r
156                                                                         <directory>src/main/resources</directory>\r
157                                                                         <includes>\r
158                                                                                 <include>*.l4j.ini</include>\r
159                                                                         </includes>\r
160                                                                         <filtering>false</filtering>\r
161                                                                 </resource>\r
162                                                         </resources>\r
163                                                 </configuration>\r
164                                         </execution>\r
165                                 </executions>\r
166                         </plugin>\r
167                         <plugin>\r
168                                 <!-- 生成したexe, jar, iniをdistフォルダにコピーする -->\r
169                                 <artifactId>maven-resources-plugin</artifactId>\r
170                                 <version>2.7</version>\r
171                                 <executions>\r
172                                         <execution>\r
173                                                 <id>copy-resources</id>\r
174                                                 <phase>package</phase>\r
175                                                 <goals>\r
176                                                         <goal>copy-resources</goal>\r
177                                                 </goals>\r
178                                                 <configuration>\r
179                                                         <outputDirectory>${basedir}/dist</outputDirectory>\r
180                                                         <resources>\r
181                                                                 <resource>\r
182                                                                         <directory>${basedir}/target</directory>\r
183                                                                         <includes>\r
184                                                                                 <include>*.exe</include>\r
185                                                                                 <include>*.jar</include>\r
186                                                                                 <include>*.ini</include>\r
187                                                                         </includes>\r
188                                                                         <filtering>false</filtering>\r
189                                                                 </resource>\r
190                                                         </resources>\r
191                                                 </configuration>\r
192                                         </execution>\r
193                                 </executions>\r
194                         </plugin>\r
195                 </plugins>\r
196         </build>\r
197 \r
198         <profiles>\r
199                 <profile>\r
200                         <!-- Windowsの場合のビルド -->\r
201                         <id>windows-profile</id>\r
202                         <activation>\r
203                                 <os>\r
204                                         <family>windows</family>\r
205                                 </os>\r
206                         </activation>\r
207                         <build>\r
208                                 <plugins>\r
209                                         <plugin>\r
210                                                 <!-- Launch4jによるjarファイルのexe化を行う. http://launch4j.sourceforge.net/docs.html -->\r
211                                                 <groupId>org.bluestemsoftware.open.maven.plugin</groupId>\r
212                                                 <artifactId>launch4j-plugin</artifactId>\r
213                                                 <version>1.5.0.0</version>\r
214                                                 <executions>\r
215                                                         <execution>\r
216                                                                 <id>l4j-gui</id>\r
217                                                                 <phase>package</phase>\r
218                                                                 <goals>\r
219                                                                         <goal>launch4j</goal>\r
220                                                                 </goals>\r
221                                                                 <configuration>\r
222                                                                         <headerType>gui</headerType>\r
223                                                                         <outfile>target/${exename}</outfile>\r
224                                                                         <jar>target/${project.artifactId}.jar</jar>\r
225                                                                         <errTitle>Failed to execute the ${project.artifactId}</errTitle>\r
226                                                                         <icon>icon.ico</icon>\r
227                                                                         <jre>\r
228                                                                                 <path>jre</path>\r
229                                                                                 <minVersion>1.5.0</minVersion>\r
230                                                                                 <initialHeapSize>64</initialHeapSize>\r
231                                                                                 <maxHeapSize>128</maxHeapSize>\r
232                                                                         </jre>\r
233                                                                         <versionInfo>\r
234                                                                                 <fileVersion>${exe_file_version}</fileVersion>\r
235                                                                                 <txtFileVersion>${implements_version}</txtFileVersion>\r
236                                                                                 <fileDescription>${appname}</fileDescription>\r
237                                                                                 <copyright>${vendor}</copyright>\r
238                                                                                 <productVersion>${exe_file_version}</productVersion>\r
239                                                                                 <txtProductVersion>${exe_file_version}</txtProductVersion>\r
240                                                                                 <productName>${appname}</productName>\r
241                                                                                 <internalName>${appname}</internalName>\r
242                                                                                 <originalFilename>${exename}</originalFilename>\r
243                                                                         </versionInfo>\r
244                                                                 </configuration>\r
245                                                         </execution>\r
246                                                 </executions>\r
247                                         </plugin>\r
248                                 </plugins>\r
249                         </build>\r
250                 </profile>\r
251 \r
252                 <profile>\r
253                         <id>osx-profile</id>\r
254                         <activation>\r
255                                 <os>\r
256                                         <family>mac</family>\r
257                                 </os>\r
258                         </activation>\r
259                         <build>\r
260                                 <plugins>\r
261                                         <plugin>\r
262                                                 <groupId>org.codehaus.mojo</groupId>\r
263                                                 <artifactId>exec-maven-plugin</artifactId>\r
264                                                 <version>1.6.0</version>\r
265                                                 <executions>\r
266                                                         <execution>\r
267                                                                 <id>Version Calculation</id>\r
268                                                                 <phase>package</phase>\r
269                                                                 <goals>\r
270                                                                         <goal>exec</goal>\r
271                                                                 </goals>\r
272                                                                 <configuration>\r
273                                                                         <executable>sh</executable>\r
274                                                                         <workingDirectory>${basedir}/dist</workingDirectory>\r
275                                                                         <commandlineArgs>-c 'chmod +x *.sh;./build_all.sh'</commandlineArgs>\r
276                                                                 </configuration>\r
277                                                         </execution>\r
278                                                 </executions>\r
279                                         </plugin>\r
280                                 </plugins>\r
281                         </build>\r
282                 </profile>\r
283         </profiles>\r
284 </project>\r