source: other-projects/FileTransfer-WebSocketPair/Themes/themebuilder/examples/maven-source/pom.xml@ 31525

Last change on this file since 31525 was 31525, checked in by ak19, 7 years ago

Nathan provided more stuff: Themes folder contains Sencha's Themebuilder which generates GXT Themes. It includes the .theme and generated .jar files for the project theme.

File size: 9.0 KB
Line 
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.example</groupId>
7 <artifactId>sample-theme</artifactId>
8 <version>1.0.0-SNAPSHOT</version>
9 <name>Sample theme</name>
10 <properties>
11 <gxt.version>4.0.0-SNAPSHOT</gxt.version>
12 <gwt.version>2.7.0</gwt.version>
13 <phantomjs.version>1.9.2</phantomjs.version>
14 <bin>bin/phantomjs</bin>
15 </properties>
16 <dependencies>
17 <dependency>
18 <groupId>com.google.gwt</groupId>
19 <artifactId>gwt-user</artifactId>
20 <version>2.7.0</version>
21 </dependency>
22 <dependency>
23 <groupId>com.sencha.gxt</groupId>
24 <artifactId>gxt</artifactId>
25 <version>${gxt.version}</version>
26 </dependency>
27
28 <dependency>
29 <groupId>com.sencha.gxt</groupId>
30 <artifactId>gxt-themebuilder</artifactId>
31 <version>${gxt.version}</version>
32 <scope>provided</scope>
33 </dependency>
34 </dependencies>
35 <build>
36 <resources>
37 <resource>
38 <directory>src/main/java</directory>
39 </resource>
40 </resources>
41 </build>
42 <profiles>
43 <profile>
44 <id>generate</id>
45 <build>
46 <plugins>
47 <!-- First, download the PhantomJS bin that can run locally. See the profiles section for how the right version
48 is selected. If a local version is used instead, this isn't necessary, but each computer that runs this maven
49 script will need a copy of phantom to correctly generate the theme. -->
50 <plugin>
51 <groupId>com.googlecode.maven-download-plugin</groupId>
52 <artifactId>maven-download-plugin</artifactId>
53 <version>1.1.0</version>
54 <executions>
55 <execution>
56 <id>download-phantomjs</id>
57 <phase>generate-sources</phase>
58 <goals>
59 <goal>wget</goal>
60 </goals>
61 <configuration>
62 <url>https://phantomjs.googlecode.com/files/phantomjs-1.9.2-${platform}${archive}</url>
63 <outputDirectory>/Users/teamcity/buildAgent/work/535f25f759aef5e6/build/target/phantomjs</outputDirectory>
64 </configuration>
65 </execution>
66 </executions>
67 <configuration>
68 <unpack>true</unpack>
69 </configuration>
70 </plugin>
71 <!-- Run the themer with the PhantomJS bin downloaded above. Generate classes into target/theme-classes. This
72 is done in the generate-sources phase, so that it could be copied to the build path, or in this case
73 src/main/java and compiled from there. -->
74 <plugin>
75 <groupId>org.codehaus.mojo</groupId>
76 <artifactId>exec-maven-plugin</artifactId>
77 <version>1.4.0</version>
78 <executions>
79 <execution>
80 <id>generate-theme</id>
81 <phase>generate-sources</phase>
82 <goals>
83 <goal>exec</goal>
84 </goals>
85 <configuration>
86 <executable>/Library/Java/JavaVirtualMachines/jdk1.7.0_75.jdk/Contents/Home/jre/bin/java</executable>
87 <arguments>
88 <argument>-classpath</argument>
89 <classpath/>
90 <argument>-DphantomBin=/Users/teamcity/buildAgent/work/535f25f759aef5e6/build/target/phantomjs/phantomjs-1.9.2-${platform}/${bin}</argument>
91 <argument>com.sencha.gxt.themebuilder.ThemeBuilder</argument>
92 <!-- Build all generated sources into the classes directory so we can filter out the sources
93 and put them in src/main/java -->
94 <argument>-gen</argument>
95 <argument>/Users/teamcity/buildAgent/work/535f25f759aef5e6/build/target/themeclasses</argument>
96 <!-- These next several arguments are optional, and are here to make it easier to debug issues in the theme -->
97 <argument>-imageFile</argument>
98 <argument>/Users/teamcity/buildAgent/work/535f25f759aef5e6/build/target/snapshot.png</argument>
99 <argument>-manifestFile</argument>
100 <argument>/Users/teamcity/buildAgent/work/535f25f759aef5e6/build/target/snapshot.json</argument>
101 <argument>-out</argument>
102 <argument>/Users/teamcity/buildAgent/work/535f25f759aef5e6/build/target/theme.jar</argument>
103 <argument>-warDir</argument>
104 <argument>/Users/teamcity/buildAgent/work/535f25f759aef5e6/build/target/war</argument>
105 <!-- List theme config files here -->
106 <argument>/Users/teamcity/buildAgent/work/535f25f759aef5e6/build/themeDetails.theme</argument>
107 </arguments>
108 </configuration>
109 </execution>
110 </executions>
111 <dependencies>
112 <dependency>
113 <groupId>com.sencha.gxt</groupId>
114 <artifactId>gxt-themebuilder</artifactId>
115 <version>${gxt.version}</version>
116 </dependency>
117 </dependencies>
118 </plugin>
119 <plugin>
120 <groupId>org.apache.maven.plugins</groupId>
121 <artifactId>maven-resources-plugin</artifactId>
122 <version>2.6</version>
123 <executions>
124 <execution>
125 <id>copy-to-sources</id>
126 <phase>generate-sources</phase>
127 <goals>
128 <goal>copy-resources</goal>
129 </goals>
130 <configuration>
131 <outputDirectory>src/main/java</outputDirectory>
132 <resources>
133 <resource>
134 <directory>/Users/teamcity/buildAgent/work/535f25f759aef5e6/build/target/themeclasses</directory>
135 <excludes>
136 <exclude>**/*.class</exclude>
137 </excludes>
138 </resource>
139 </resources>
140 </configuration>
141 </execution>
142 </executions>
143 </plugin>
144 </plugins>
145 </build>
146 </profile>
147 <!-- These profiles let us pick which version of PhantomJS to download and provide to the themer. This isn't
148 required if phantom is on the path already, or if each machine where this build will be run has some way of
149 specifying the phantomJS build to be used. -->
150 <profile>
151 <id>win32</id>
152 <activation>
153 <os>
154 <family>windows</family>
155 </os>
156 </activation>
157 <properties>
158 <platform>windows</platform>
159 <bin>phantomjs.exe</bin>
160 <archive>.zip</archive>
161 </properties>
162 </profile>
163
164 <profile>
165 <id>mac</id>
166 <activation>
167 <os>
168 <family>mac</family>
169 </os>
170 </activation>
171 <properties>
172 <platform>macosx</platform>
173 <archive>.zip</archive>
174 </properties>
175 </profile>
176 <profile>
177 <id>linux</id>
178 <activation>
179 <os>
180 <family>unix</family>
181 <name>linux</name>
182 </os>
183 </activation>
184 <properties>
185 <platform>linux-i686</platform>
186 <archive>.tar.bz2</archive>
187 </properties>
188 <build>
189 <plugins>
190 <plugin>
191 <groupId>com.googlecode.maven-download-plugin</groupId>
192 <artifactId>maven-download-plugin</artifactId>
193 <configuration>
194 <unpack>false</unpack>
195 </configuration>
196 </plugin>
197 <plugin>
198 <groupId>org.apache.maven.plugins</groupId>
199 <artifactId>maven-antrun-plugin</artifactId>
200 <version>1.7</version>
201 <executions>
202 <execution>
203 <id>unpack-linux</id>
204 <phase>compile</phase>
205 <goals>
206 <goal>run</goal>
207 </goals>
208 <configuration>
209 <failOnError>true</failOnError>
210 <target>
211 <bunzip2 src="/Users/teamcity/buildAgent/work/535f25f759aef5e6/build/target/phantomjs/phantomjs-1.9.2-${platform}.tar.bz2"/>
212 <untar src="/Users/teamcity/buildAgent/work/535f25f759aef5e6/build/target/phantomjs/phantomjs-1.9.2-${platform}.tar" dest="/Users/teamcity/buildAgent/work/535f25f759aef5e6/build/target/phantomjs/"/>
213 </target>
214 </configuration>
215 </execution>
216 </executions>
217 </plugin>
218 </plugins>
219 </build>
220 </profile>
221
222 <profile>
223 <id>lin64</id>
224 <activation>
225 <os>
226 <family>unix</family>
227 <arch>amd64</arch>
228 <name>linux</name>
229 </os>
230 </activation>
231 <properties>
232 <platform>linux-x86_64</platform>
233 </properties>
234 </profile>
235 </profiles>
236</project>
Note: See TracBrowser for help on using the repository browser.