Patch by Alexej Andrejev to support dual mode between bck2brwr VM and TeaVM
authorJaroslav Tulach <jaroslav.tulach@apidesign.org>
Tue, 04 Nov 2014 19:30:23 +0100
changeset 2234ee062b3f5ed
parent 222 5959a90ffda7
child 224 28fea293423d
Patch by Alexej Andrejev to support dual mode between bck2brwr VM and TeaVM
minesweeper/pom.xml
minesweeper/src/main/webapp/pages/index.html
     1.1 --- a/minesweeper/pom.xml	Tue Nov 04 06:39:53 2014 +0100
     1.2 +++ b/minesweeper/pom.xml	Tue Nov 04 19:30:23 2014 +0100
     1.3 @@ -27,6 +27,7 @@
     1.4      <project.mainclass>org.apidesign.demo.minesweeper.Main</project.mainclass>
     1.5      <netbeans.compile.on.save>none</netbeans.compile.on.save>
     1.6      <bck2brwsr.obfuscationlevel>FULL</bck2brwsr.obfuscationlevel>
     1.7 +    <teavm.debug>false</teavm.debug>
     1.8    </properties>
     1.9    <build>
    1.10        <plugins>
    1.11 @@ -425,12 +426,12 @@
    1.12                                </goals>
    1.13                                <phase>process-classes</phase>
    1.14                                <configuration>
    1.15 +                                  <mainClass>org.apidesign.demo.minesweeper.MinesModel</mainClass>
    1.16 +                                  <debugInformationGenerated>${teavm.debug}</debugInformationGenerated>
    1.17 +                                  <sourceMapsGenerated>${teavm.debug}</sourceMapsGenerated>
    1.18 +                                  <sourceFilesCopied>${teavm.debug}</sourceFilesCopied>
    1.19                                    <!-- Whether we want TeaVM to minify (obfuscate) the generated JavaScript -->
    1.20                                    <minifying>false</minifying>
    1.21 -                                  <properties>
    1.22 -                                      <!-- This classes (separated with , ; space) will be available through vm.loadClass() -->
    1.23 -                                      <html4j.entryPoints>org.apidesign.demo.minesweeper.MinesModel</html4j.entryPoints>
    1.24 -                                  </properties>
    1.25                                    <!-- Don't include main page - we created it by ourselves -->
    1.26                                    <mainPageIncluded>false</mainPageIncluded>
    1.27                                    <!-- Merge runtime.js instead of putting as a separate file -->
     2.1 --- a/minesweeper/src/main/webapp/pages/index.html	Tue Nov 04 06:39:53 2014 +0100
     2.2 +++ b/minesweeper/src/main/webapp/pages/index.html	Tue Nov 04 19:30:23 2014 +0100
     2.3 @@ -235,9 +235,14 @@
     2.4          <!-- boot bck2brwsr -->
     2.5          <script type="text/javascript" src="bck2brwsr.js"></script>
     2.6          <script>
     2.7 -            var vm = bck2brwsr('minesweeper.js');
     2.8 -            var c = vm.loadClass('org.apidesign.demo.minesweeper.MinesModel');
     2.9 -            c.invoke('main');
    2.10 +            if (!this.hasOwnProperty("main")) {
    2.11 +                this.main = function() {
    2.12 +                    var vm = bck2brwsr('minesweeper.js');
    2.13 +                    var c = vm.loadClass('org.apidesign.demo.minesweeper.MinesModel');
    2.14 +                    c.invoke('main');
    2.15 +                }
    2.16 +            }
    2.17 +            this.main();
    2.18          </script>
    2.19  
    2.20      </body>