minesweeper/pom.xml
author Jaroslav Tulach <jtulach@netbeans.org>
Thu, 27 Mar 2014 15:14:48 +0100
branchibrwsr
changeset 124 533c2be1747c
parent 123 17aafe5116d5
parent 120 1f150d9e4815
child 125 d7b40912b16d
permissions -rw-r--r--
Merge from main line and resolve all the conflicts
     1 <?xml version="1.0" encoding="UTF-8"?>
     2 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 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 
     5   <groupId>org.apidesign.demo</groupId>
     6   <artifactId>minesweeper</artifactId>
     7   <version>1.0-SNAPSHOT</version>
     8   <packaging>jar</packaging>
     9   <parent>
    10       <artifactId>demo</artifactId>
    11       <groupId>org.apidesign.html</groupId>
    12       <version>1.0-SNAPSHOT</version>
    13   </parent>
    14 
    15   <name>Mine Sweeper</name>
    16 
    17   <properties>
    18     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    19     <brwsr.startpage>pages/index.html</brwsr.startpage>
    20     <project.mainclass>org.apidesign.demo.minesweeper.Main</project.mainclass>
    21     <netbeans.compile.on.save>none</netbeans.compile.on.save>
    22   </properties>
    23   <build>
    24       <plugins>
    25           <plugin>
    26                 <groupId>org.robovm</groupId>
    27                 <artifactId>robovm-maven-plugin</artifactId>
    28                 <version>0.0.10.1</version>
    29                 <configuration>
    30                     <config>
    31                         <mainClass>org.apidesign.demo.minesweeper.Main</mainClass>
    32                         <forceLinkClasses>
    33                             <pattern>java.util.logging.ConsoleHandler</pattern>
    34                             <pattern>java.util.logging.SimpleFormatter</pattern>
    35                             <pattern>org.netbeans.html.ko4j.KO4J</pattern>
    36                             <pattern>org.netbeans.html.sound.impl.BrowserAudioEnv</pattern>
    37                             <pattern>org.apidesign.brwsr.IBrwsrPrsntr</pattern>
    38                         </forceLinkClasses>                        
    39                     </config>
    40                     <includeJFX>false</includeJFX>
    41                 </configuration>
    42           </plugin>
    43           <plugin>
    44               <groupId>org.apache.maven.plugins</groupId>
    45               <artifactId>maven-compiler-plugin</artifactId>
    46               <version>2.3.2</version>
    47               <configuration>
    48                   <source>1.6</source>
    49                   <target>1.6</target>
    50               </configuration>
    51           </plugin>
    52           <plugin>
    53               <groupId>org.apache.maven.plugins</groupId>
    54               <artifactId>maven-resources-plugin</artifactId>
    55               <version>2.6</version>
    56               <executions>
    57                   <execution>
    58                       <id>copy-resources</id>
    59                       <!-- here the phase you need -->
    60                       <phase>process-resources</phase>
    61                       <goals>
    62                           <goal>copy-resources</goal>
    63                       </goals>
    64                       <configuration>
    65                           <outputDirectory>${basedir}/target/classes/org/apidesign/demo/minesweeper/</outputDirectory>
    66                           <resources>          
    67                               <resource>
    68                                   <directory>src/main/webapp/</directory>
    69                                   <filtering>true</filtering>
    70                               </resource>
    71                           </resources>              
    72                       </configuration>            
    73                   </execution>
    74               </executions>
    75           </plugin>
    76           <plugin>
    77               <groupId>org.apache.maven.plugins</groupId>
    78               <artifactId>maven-jar-plugin</artifactId>
    79               <version>2.4</version>
    80               <configuration>
    81                   <archive>
    82                       <manifest>
    83                           <mainClass>${project.mainclass}</mainClass>
    84                           <addClasspath>true</addClasspath>
    85                           <classpathPrefix>lib/</classpathPrefix>
    86                       </manifest>
    87                   </archive>
    88               </configuration>
    89           </plugin>
    90           <plugin>
    91               <groupId>org.codehaus.mojo</groupId>
    92               <artifactId>exec-maven-plugin</artifactId>
    93               <version>1.2.1</version>
    94               <configuration>
    95                   <systemProperties>
    96                       <systemProperty>
    97                           <key>browser.rootdir</key>
    98                           <value>${basedir}/src/main/webapp/</value>
    99                       </systemProperty>
   100                   </systemProperties>
   101                   <mainClass>${project.mainclass}</mainClass>
   102               </configuration>
   103           </plugin>      
   104       </plugins>
   105   </build>
   106   <dependencies>
   107     <dependency>
   108         <groupId>org.netbeans.html</groupId>
   109         <artifactId>net.java.html.json</artifactId>
   110         <version>${net.java.html.version}</version>
   111     </dependency>
   112     <dependency>
   113         <groupId>org.netbeans.html</groupId>
   114         <artifactId>net.java.html.boot</artifactId>
   115         <version>${net.java.html.version}</version>
   116     </dependency>
   117     <dependency>
   118         <groupId>org.netbeans.html</groupId>
   119         <artifactId>net.java.html</artifactId>
   120         <version>${net.java.html.version}</version>
   121     </dependency>
   122     <dependency>
   123         <groupId>org.netbeans.html</groupId>
   124         <artifactId>net.java.html.sound</artifactId>
   125         <version>${net.java.html.version}</version>
   126     </dependency>
   127     <dependency>
   128         <groupId>org.netbeans.html</groupId>
   129         <artifactId>ko4j</artifactId>
   130         <version>${net.java.html.version}</version>
   131     </dependency>
   132     <dependency>
   133       <groupId>org.netbeans.html</groupId>
   134       <artifactId>nbrwsr</artifactId>
   135       <version>${net.java.html.version}</version>
   136       <scope>provided</scope>
   137     </dependency>
   138     <dependency>
   139       <groupId>org.testng</groupId>
   140       <artifactId>testng</artifactId>
   141       <version>6.7</version>
   142       <scope>test</scope>
   143     </dependency>
   144     <dependency>
   145       <groupId>org.apidesign.brwsr</groupId>
   146       <artifactId>ibrwsr</artifactId>
   147       <version>1.0-SNAPSHOT</version>
   148     </dependency>
   149   </dependencies>
   150   <profiles>
   151       <profile>
   152           <id>fxbrwsr</id>
   153           <activation>
   154               <activeByDefault>true</activeByDefault>
   155           </activation>
   156           <build>
   157             <plugins>
   158                 <plugin>
   159                     <artifactId>maven-assembly-plugin</artifactId>
   160                     <version>2.4</version>
   161                     <executions>
   162                         <execution>
   163                             <id>distro-assembly</id>
   164                             <phase>package</phase>
   165                             <goals>
   166                                 <goal>single</goal>
   167                             </goals>
   168                             <configuration>
   169                                 <descriptors>
   170                                     <descriptor>src/main/assembly/html.java.net.xml</descriptor>
   171                                 </descriptors>
   172                             </configuration>
   173                         </execution>
   174                     </executions>                
   175                 </plugin>      
   176             </plugins>
   177           </build>
   178           <dependencies>
   179             <dependency>
   180                 <groupId>org.netbeans.html</groupId>
   181                 <artifactId>net.java.html.boot.fx</artifactId>
   182                 <version>${net.java.html.version}</version>
   183                 <scope>runtime</scope>
   184             </dependency>
   185           </dependencies>
   186       </profile>
   187       <profile>
   188           <id>bck2brwsr</id>
   189           <activation>
   190               <property>
   191                   <name>brwsr</name>
   192                   <value>bck2brwsr</value>
   193               </property>
   194           </activation>
   195           <build>
   196               <plugins>
   197                   <plugin>
   198                       <groupId>org.apidesign.bck2brwsr</groupId>
   199                       <artifactId>bck2brwsr-maven-plugin</artifactId>
   200                       <version>${bck2brwsr.version}</version>
   201                       <executions>
   202                           <execution>
   203                               <goals>
   204                                   <goal>brwsr</goal>
   205                               </goals>
   206                           </execution>
   207                       </executions>
   208                       <configuration>
   209                           <directory>${basedir}/src/main/webapp/</directory>
   210                           <startpage>${brwsr.startpage}</startpage>
   211                       </configuration>
   212                   </plugin>
   213                   <plugin>
   214                       <groupId>org.apache.maven.plugins</groupId>
   215                       <artifactId>maven-compiler-plugin</artifactId>
   216                       <configuration>
   217                           <compilerArguments>
   218                               <bootclasspath>netbeans.ignore.jdk.bootclasspath</bootclasspath>
   219                           </compilerArguments>
   220                       </configuration>
   221                   </plugin>
   222                   <plugin>
   223                       <artifactId>maven-assembly-plugin</artifactId>
   224                       <version>2.4</version>
   225                       <executions>
   226                           <execution>
   227                               <id>distro-assembly</id>
   228                               <phase>package</phase>
   229                               <goals>
   230                                   <goal>single</goal>
   231                               </goals>
   232                               <configuration>
   233                                   <descriptors>
   234                                       <descriptor>src/main/assembly/bck2brwsr.xml</descriptor>
   235                                   </descriptors>
   236                               </configuration>
   237                           </execution>
   238                       </executions>                
   239                   </plugin>      
   240               </plugins>
   241           </build>
   242           <dependencies>
   243               <dependency>
   244                   <groupId>org.apidesign.bck2brwsr</groupId>
   245                   <artifactId>emul</artifactId>
   246                   <version>${bck2brwsr.version}</version>
   247                   <classifier>rt</classifier>
   248               </dependency>
   249               <dependency>
   250                   <groupId>org.apidesign.bck2brwsr</groupId>
   251                   <artifactId>ko-bck2brwsr</artifactId>
   252                   <version>${bck2brwsr.version}</version>
   253                   <scope>runtime</scope>
   254               </dependency>
   255               <dependency>
   256                   <groupId>org.apidesign.bck2brwsr</groupId>
   257                   <artifactId>vm4brwsr</artifactId>
   258                   <classifier>js</classifier>
   259                   <type>zip</type>
   260                   <version>${bck2brwsr.version}</version>
   261                   <scope>provided</scope>
   262               </dependency>
   263           </dependencies>
   264       </profile>
   265       <profile>
   266           <id>dlvkbrwsr</id>
   267           <properties>
   268               <platform.version>4.1.1.4</platform.version>
   269               <android.plugin.version>3.7.0</android.plugin.version>
   270               <debug>false</debug>
   271           </properties>
   272           <dependencies>
   273               <dependency>
   274                   <groupId>com.google.android</groupId>
   275                   <artifactId>android</artifactId>
   276                   <version>${platform.version}</version>
   277                   <scope>provided</scope>
   278               </dependency>
   279               <dependency>
   280                   <groupId>org.apidesign.brwsr</groupId>
   281                   <artifactId>dlvkbrwsr</artifactId>
   282                   <version>0.5</version>
   283                   <type>jar</type>
   284               </dependency>
   285               <dependency>
   286                   <groupId>org.netbeans.html</groupId>
   287                   <artifactId>ko-ws-tyrus</artifactId>
   288                   <version>${net.java.html.version}</version>
   289                   <exclusions>
   290                       <exclusion>
   291                           <artifactId>org.json-osgi</artifactId>
   292                           <groupId>de.twentyeleven.skysail</groupId>
   293                       </exclusion>
   294                   </exclusions>
   295               </dependency>
   296           </dependencies>
   297           <build>
   298               <plugins>
   299                   <plugin>
   300                       <groupId>com.jayway.maven.plugins.android.generation2</groupId>
   301                       <artifactId>android-maven-plugin</artifactId>
   302                       <version>${android.plugin.version}</version>
   303                       <extensions>true</extensions>
   304                       <configuration>
   305                           <classifier>apk</classifier>
   306                           <attachJar>false</attachJar>
   307                           <apkDebug>debug</apkDebug>
   308                           <assetsDirectory>src/main/webapp</assetsDirectory>
   309                           <sdk>
   310                               <platform>16</platform>
   311                           </sdk>
   312                           <apk>
   313                               <metaIncludes>
   314                                   <metaInclude>services/org.apidesign.**</metaInclude>
   315                               </metaIncludes>
   316                           </apk>
   317                           <extractDuplicates>true</extractDuplicates>
   318                           <file>${project.build.directory}/${project.build.finalName}.apk</file>
   319                       </configuration>
   320                       <executions>
   321                           <execution>
   322                               <id>apk</id>
   323                               <goals>
   324                                   <goal>apk</goal>
   325                                   <goal>dex</goal>
   326                               </goals>
   327                           </execution>
   328                       </executions>
   329                   </plugin>
   330                   <plugin>
   331                       <groupId>org.apache.maven.plugins</groupId>
   332                       <artifactId>maven-install-plugin</artifactId>
   333                       <version>2.5.1</version>
   334                       <configuration>
   335                           <groupId>${project.groupId}</groupId>
   336                           <artifactId>${project.artifactId}</artifactId>
   337                           <version>${project.version}</version>
   338                           <file>${project.build.directory}/${project.build.finalName}.apk</file>
   339                           <packaging>apk</packaging>
   340                           <skip>true</skip>
   341                       </configuration>
   342                       <executions>
   343                           <execution>
   344                               <id>install-apk</id>
   345                               <phase>install</phase>
   346                               <goals>
   347                                   <goal>install-file</goal>
   348                               </goals>
   349                           </execution>
   350                       </executions>
   351                   </plugin>
   352               </plugins>
   353           </build>
   354       </profile>
   355       <profile>
   356           <id>teabrwsr</id>
   357           <build>
   358               <plugins>
   359                   <plugin>
   360                       <groupId>org.teavm</groupId>
   361                       <artifactId>teavm-maven-plugin</artifactId>
   362                       <version>${teavm.version}</version>
   363                       <dependencies>
   364                           <dependency>
   365                               <groupId>org.teavm</groupId>
   366                               <artifactId>teavm-classlib</artifactId>
   367                               <version>${teavm.version}</version>
   368                           </dependency>
   369                           <!-- This module adds html4j support. It mainly includes JavaScriptBuilder support.
   370                           Also there are some little patches to JCL emulation, that are required to pass TCK -->
   371                           <dependency>
   372                               <groupId>org.teavm</groupId>
   373                               <artifactId>teavm-html4j</artifactId>
   374                               <version>${teavm.version}</version>
   375                           </dependency>
   376                       </dependencies>
   377                       <executions>
   378                           <execution>
   379                               <id>generate-minesweeper</id>
   380                               <goals>
   381                                   <goal>build-javascript</goal>
   382                               </goals>
   383                               <phase>process-classes</phase>
   384                               <configuration>
   385                                   <!-- Whether we want TeaVM to minify (obfuscate) the generated JavaScript -->
   386                                   <minifying>false</minifying>
   387                                   <properties>
   388                                       <!-- This classes (separated with , ; space) will be available through vm.loadClass() -->
   389                                       <html4j.entryPoints>org.apidesign.demo.minesweeper.MainBrwsr</html4j.entryPoints>
   390                                   </properties>
   391                                   <!-- Don't include main page - we created it by ourselves -->
   392                                   <mainPageIncluded>false</mainPageIncluded>
   393                                   <!-- Merge runtime.js instead of putting as a separate file -->
   394                                   <runtime>MERGED</runtime>
   395                                   <!-- Name of the generated file -->
   396                                   <targetFileName>bck2brwsr.js</targetFileName>
   397                                   <targetDirectory>${project.build.directory}/teavm</targetDirectory>
   398                                   <!-- This transformer adds null checks before virtual calls. It is not included
   399                                   by default as we don't always need these null checks -->
   400                                   <transformers>
   401                                       <param>org.teavm.javascript.NullPointerExceptionTransformer</param>
   402                                   </transformers>
   403                               </configuration>
   404                           </execution>
   405                       </executions>
   406                   </plugin>
   407                   <plugin>
   408                       <artifactId>maven-assembly-plugin</artifactId>
   409                       <version>2.4</version>
   410                       <executions>
   411                           <execution>
   412                               <id>distro-assembly</id>
   413                               <phase>package</phase>
   414                               <goals>
   415                                   <goal>single</goal>
   416                               </goals>
   417                               <configuration>
   418                                   <descriptors>
   419                                       <descriptor>src/main/assembly/teabrwsr.xml</descriptor>
   420                                   </descriptors>
   421                               </configuration>
   422                           </execution>
   423                       </executions>                
   424                   </plugin>      
   425               </plugins>
   426           </build>
   427       </profile>
   428       <profile>
   429           <id>nbrwsr</id>
   430           <dependencies>
   431               <dependency>
   432                   <groupId>org.netbeans.html</groupId>
   433                   <artifactId>nbrwsr</artifactId>
   434                   <version>${net.java.html.version}</version>
   435                   <scope>compile</scope>
   436               </dependency>
   437           </dependencies>
   438           <build>
   439               <plugins>
   440                   <plugin>
   441                       <groupId>org.apache.maven.plugins</groupId>
   442                       <artifactId>maven-resources-plugin</artifactId>
   443                       <version>2.6</version>
   444                       <executions>
   445                           <execution>
   446                               <id>include-webpages</id>
   447                               <goals>
   448                                   <goal>copy-resources</goal>
   449                               </goals>
   450                               <phase>process-resources</phase>
   451                               <configuration>
   452                                   <outputDirectory>${basedir}/target/classes/org/apidesign/demo/minesweeper</outputDirectory>
   453                                   <overwrite>true</overwrite>
   454                                   <resources>          
   455                                       <resource>
   456                                           <directory>src/main/webapp/pages</directory>
   457                                       </resource>
   458                                   </resources>              
   459                               </configuration>   
   460                           </execution>
   461                       </executions>
   462                   </plugin>
   463                   <plugin>
   464                       <groupId>org.codehaus.mojo</groupId>
   465                       <artifactId>nbm-maven-plugin</artifactId>
   466                       <version>3.13</version>
   467                       <extensions>true</extensions>
   468                       <executions>
   469                           <execution>
   470                               <id>default-manifest</id>
   471                               <phase>process-classes</phase>
   472                               <goals>
   473                                   <goal>manifest</goal>
   474                               </goals>
   475                               <configuration>
   476                                   <useOSGiDependencies>true</useOSGiDependencies>
   477                                   <brandingToken>html4j4nb</brandingToken>
   478                                   <cluster>html4j4nb</cluster>
   479                                   <verifyIntegrity>false</verifyIntegrity>
   480                               </configuration>
   481                           </execution>                       
   482                           <execution>
   483                               <id>default-nbm</id>
   484                               <phase>package</phase>
   485                               <goals>
   486                                   <goal>nbm</goal>
   487                               </goals>
   488                               <configuration>
   489                                   <useOSGiDependencies>true</useOSGiDependencies>
   490                                   <cluster>html4j4nb</cluster>
   491                                   <verifyIntegrity>false</verifyIntegrity>
   492                               </configuration>
   493                           </execution>
   494                       </executions>
   495                       <configuration>
   496                           <useOSGiDependencies>true</useOSGiDependencies>
   497                           <brandingToken>html4j4nb</brandingToken>
   498                           <cluster>html4j4nb</cluster>
   499                           <verifyIntegrity>false</verifyIntegrity>
   500                       </configuration>
   501                   </plugin>                      
   502 
   503                   <plugin>
   504                       <groupId>org.apache.maven.plugins</groupId>
   505                       <artifactId>maven-jar-plugin</artifactId>
   506                       <configuration>
   507                           <!-- to have the jar plugin pickup the nbm generated manifest -->
   508                           <useDefaultManifestFile>true</useDefaultManifestFile>
   509                       </configuration>
   510                   </plugin>
   511               </plugins>
   512           </build>
   513       </profile>      
   514   </profiles>  
   515 </project>