2 <project xmlns="http://maven.apache.org/POM/4.0.0" 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>
7 <groupId>org.apidesign.bck2brwsr</groupId>
8 <artifactId>kosample-pom</artifactId>
9 <version>1.0-SNAPSHOT</version>
12 <groupId>org.apidesign.bck2brwsr</groupId>
13 <artifactId>kosample-web</artifactId>
14 <version>1.0-SNAPSHOT</version>
15 <packaging>jar</packaging>
17 <name>kosample Client for Web</name>
20 <netbeans.compile.on.save>none</netbeans.compile.on.save>
21 <project.mainclass>org.apidesign.bck2brwsr.kosample.BrowserMain</project.mainclass>
22 <browser.bootstrap>initialize bck2brwsr -->
23 <script type="text/javascript" src="bck2brwsr.js"></script>
25 var vm = bck2brwsr('kosample.js');
26 var c = vm.loadClass('org.apidesign.bck2brwsr.kosample.BrowserMain');
29 <!-- end of initialization </browser.bootstrap>
34 <groupId>org.netbeans.html</groupId>
35 <artifactId>html4j-maven-plugin</artifactId>
36 <version>${net.java.html.version}</version>
41 <goal>process-js-annotations</goal>
47 <groupId>org.apache.maven.plugins</groupId>
48 <artifactId>maven-compiler-plugin</artifactId>
49 <version>2.3.2</version>
54 <bootclasspath>netbeans.ignore.jdk.bootclasspath</bootclasspath>
59 <groupId>org.apache.maven.plugins</groupId>
60 <artifactId>maven-jar-plugin</artifactId>
61 <version>2.4</version>
65 <mainClass>${project.mainclass}</mainClass>
66 <addClasspath>true</addClasspath>
67 <classpathPrefix>lib/</classpathPrefix>
68 <useUniqueVersions>false</useUniqueVersions>
74 <groupId>org.apidesign.bck2brwsr</groupId>
75 <artifactId>bck2brwsr-maven-plugin</artifactId>
76 <version>${bck2brwsr.version}</version>
86 <obfuscation>${bck2brwsr.obfuscationlevel}</obfuscation>
87 <directory>${project.build.directory}/${project.build.finalName}-bck2brwsr/public_html/</directory>
88 <startpage>index.html</startpage>
89 <classPathPrefix>lib</classPathPrefix>
90 <mainJavaScript>${project.build.directory}/kosample.js</mainJavaScript>
92 <export>${project.mainclass}</export>
97 <artifactId>maven-assembly-plugin</artifactId>
98 <version>2.4</version>
101 <id>distro-assembly</id>
102 <phase>package</phase>
108 <descriptor>src/main/assembly/bck2brwsr.xml</descriptor>
115 <groupId>org.apache.maven.plugins</groupId>
116 <artifactId>maven-dependency-plugin</artifactId>
117 <version>2.9</version>
121 <phase>process-resources</phase>
123 <goal>unpack-dependencies</goal>
129 <classifier>webpages</classifier>
130 <overWrite>true</overWrite>
131 <outputDirectory>target/web/pages</outputDirectory>
132 <includes>*/**</includes>
139 <groupId>org.apidesign.bck2brwsr</groupId>
140 <artifactId>kosample</artifactId>
141 <version>${project.version}</version>
144 <groupId>org.netbeans.html</groupId>
145 <artifactId>net.java.html.boot.fx</artifactId>
150 <groupId>org.apidesign.bck2brwsr</groupId>
151 <artifactId>emul</artifactId>
152 <version>${bck2brwsr.version}</version>
153 <classifier>rt</classifier>
156 <groupId>org.netbeans.html</groupId>
157 <artifactId>net.java.html.boot</artifactId>
158 <version>${net.java.html.version}</version>
161 <artifactId>asm</artifactId>
162 <groupId>org.ow2.asm</groupId>
167 <groupId>org.apidesign.bck2brwsr</groupId>
168 <artifactId>emul</artifactId>
169 <version>${bck2brwsr.version}</version>
170 <classifier>bck2brwsr</classifier>
171 <scope>provided</scope>
174 <groupId>org.apidesign.bck2brwsr</groupId>
175 <artifactId>ko-bck2brwsr</artifactId>
176 <version>${bck2brwsr.version}</version>
177 <classifier>bck2brwsr</classifier>
178 <scope>provided</scope>
181 <groupId>org.apidesign.bck2brwsr</groupId>
182 <artifactId>kosample-js</artifactId>
183 <version>${project.version}</version>
184 <classifier>bck2brwsr</classifier>
185 <scope>provided</scope>
193 <teavm.version>0.4.0</teavm.version>
194 <teavm.debug>false</teavm.debug>
195 <browser.bootstrap>initialize TeaVM -->
196 <script type="text/javascript" src="teavm.js"></script>
200 <!-- end of initialization </browser.bootstrap>
203 <!-- needs special compile time dep otherwise TeaVM ignores the JAR -->
205 <groupId>org.netbeans.html</groupId>
206 <artifactId>ko4j</artifactId>
207 <version>${net.java.html.version}</version>
213 <groupId>org.teavm</groupId>
214 <artifactId>teavm-maven-plugin</artifactId>
215 <version>${teavm.version}</version>
218 <groupId>org.teavm</groupId>
219 <artifactId>teavm-classlib</artifactId>
220 <version>${teavm.version}</version>
222 <!-- This module adds html4j support. It mainly includes JavaScriptBuilder support.
223 Also there are some little patches to JCL emulation, that are required to pass TCK -->
225 <groupId>org.teavm</groupId>
226 <artifactId>teavm-html4j</artifactId>
227 <version>${teavm.version}</version>
232 <id>generate-teavm</id>
236 <phase>process-classes</phase>
238 <mainClass>${project.mainclass}</mainClass>
239 <debugInformationGenerated>${teavm.debug}</debugInformationGenerated>
240 <sourceMapsGenerated>${teavm.debug}</sourceMapsGenerated>
241 <sourceFilesCopied>${teavm.debug}</sourceFilesCopied>
242 <!-- Whether we want TeaVM to minify (obfuscate) the generated JavaScript -->
243 <minifying>false</minifying>
244 <!-- Don't include main page - we created it by ourselves -->
245 <mainPageIncluded>false</mainPageIncluded>
246 <!-- Merge runtime.js instead of putting as a separate file -->
247 <runtime>MERGED</runtime>
248 <!-- Name of the generated file -->
249 <targetFileName>teavm.js</targetFileName>
250 <targetDirectory>${project.build.directory}/teavm</targetDirectory>
251 <!-- This transformer adds null checks before virtual calls. It is not included
252 by default as we don't always need these null checks
254 <param>org.teavm.javascript.NullPointerExceptionTransformer</param>
262 <artifactId>maven-assembly-plugin</artifactId>
263 <version>2.4</version>
266 <id>distro-assembly</id>
267 <phase>package</phase>
273 <descriptor>src/main/assembly/teavm.xml</descriptor>
280 <groupId>org.apidesign.bck2brwsr</groupId>
281 <artifactId>bck2brwsr-maven-plugin</artifactId>
282 <version>${bck2brwsr.version}</version>
291 <directory>${project.build.directory}/${project.build.finalName}-teavm/public_html/</directory>
292 <startpage>index.html</startpage>