mirror of
https://github.com/Eaglercraft-TeaVM-Fork/eagler-teavm.git
synced 2024-12-22 08:14:09 -08:00
Fixing bugs in WASM emitter
This commit is contained in:
parent
e5356fae27
commit
89c16b9807
|
@ -1,31 +1,14 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="CompilerConfiguration">
|
||||
<option name="DEFAULT_COMPILER" value="Javac" />
|
||||
<excludeFromCompile>
|
||||
<directory url="file://$PROJECT_DIR$/tools/maven/webapp/src/main/resources/archetype-resources" includeSubdirectories="true" />
|
||||
</excludeFromCompile>
|
||||
<resourceExtensions />
|
||||
<wildcardResourcePatterns>
|
||||
<entry name="!?*.java" />
|
||||
<entry name="!?*.form" />
|
||||
<entry name="!?*.class" />
|
||||
<entry name="!?*.groovy" />
|
||||
<entry name="!?*.scala" />
|
||||
<entry name="!?*.flex" />
|
||||
<entry name="!?*.kt" />
|
||||
<entry name="!?*.clj" />
|
||||
<entry name="!?*.aj" />
|
||||
</wildcardResourcePatterns>
|
||||
<annotationProcessing>
|
||||
<profile default="true" name="Default" enabled="false">
|
||||
<processorPath useClasspath="true" />
|
||||
</profile>
|
||||
<profile default="false" name="Maven default annotation processors profile" enabled="true">
|
||||
<profile name="Maven default annotation processors profile" enabled="true">
|
||||
<sourceOutputDir name="target/generated-sources/annotations" />
|
||||
<sourceTestOutputDir name="target/generated-test-sources/test-annotations" />
|
||||
<outputRelativeToContentRoot value="true" />
|
||||
<processorPath useClasspath="true" />
|
||||
<module name="impl" />
|
||||
<module name="teavm-chrome-rdp" />
|
||||
<module name="teavm-classlib" />
|
||||
|
@ -33,6 +16,7 @@
|
|||
<module name="teavm-core" />
|
||||
<module name="teavm-extras-slf4j" />
|
||||
<module name="teavm-html4j" />
|
||||
<module name="teavm-interop" />
|
||||
<module name="teavm-jso" />
|
||||
<module name="teavm-jso-apis" />
|
||||
<module name="teavm-jso-impl" />
|
||||
|
@ -61,6 +45,7 @@
|
|||
<module name="teavm-core" target="1.8" />
|
||||
<module name="teavm-extras-slf4j" target="1.8" />
|
||||
<module name="teavm-html4j" target="1.8" />
|
||||
<module name="teavm-interop" target="1.5" />
|
||||
<module name="teavm-jso" target="1.8" />
|
||||
<module name="teavm-jso-apis" target="1.8" />
|
||||
<module name="teavm-jso-impl" target="1.8" />
|
||||
|
|
|
@ -6,6 +6,7 @@
|
|||
<file url="file://$PROJECT_DIR$/core" charset="UTF-8" />
|
||||
<file url="file://$PROJECT_DIR$/extras-slf4j" charset="UTF-8" />
|
||||
<file url="file://$PROJECT_DIR$/html4j" charset="UTF-8" />
|
||||
<file url="file://$PROJECT_DIR$/interop/core" charset="UTF-8" />
|
||||
<file url="file://$PROJECT_DIR$/jso/apis" charset="UTF-8" />
|
||||
<file url="file://$PROJECT_DIR$/jso/core" charset="UTF-8" />
|
||||
<file url="file://$PROJECT_DIR$/jso/impl" charset="UTF-8" />
|
||||
|
|
|
@ -62,6 +62,7 @@
|
|||
<option name="originalFiles">
|
||||
<list>
|
||||
<option value="$PROJECT_DIR$/pom.xml" />
|
||||
<option value="$PROJECT_DIR$/interop/core/pom.xml" />
|
||||
</list>
|
||||
</option>
|
||||
<option name="ignoredFiles">
|
||||
|
|
|
@ -2,7 +2,6 @@
|
|||
<project version="4">
|
||||
<component name="ProjectModuleManager">
|
||||
<modules>
|
||||
<module fileurl="file://$PROJECT_DIR$/all-deps/all-deps.iml" filepath="$PROJECT_DIR$/all-deps/all-deps.iml" />
|
||||
<module fileurl="file://$PROJECT_DIR$/teavm.iml" filepath="$PROJECT_DIR$/teavm.iml" />
|
||||
<module fileurl="file://$PROJECT_DIR$/tools/chrome-rdp/teavm-chrome-rdp.iml" filepath="$PROJECT_DIR$/tools/chrome-rdp/teavm-chrome-rdp.iml" />
|
||||
<module fileurl="file://$PROJECT_DIR$/classlib/teavm-classlib.iml" filepath="$PROJECT_DIR$/classlib/teavm-classlib.iml" />
|
||||
|
@ -10,9 +9,7 @@
|
|||
<module fileurl="file://$PROJECT_DIR$/core/teavm-core.iml" filepath="$PROJECT_DIR$/core/teavm-core.iml" />
|
||||
<module fileurl="file://$PROJECT_DIR$/extras-slf4j/teavm-extras-slf4j.iml" filepath="$PROJECT_DIR$/extras-slf4j/teavm-extras-slf4j.iml" />
|
||||
<module fileurl="file://$PROJECT_DIR$/html4j/teavm-html4j.iml" filepath="$PROJECT_DIR$/html4j/teavm-html4j.iml" />
|
||||
<module fileurl="file://$PROJECT_DIR$/tools/idea/teavm-idea-plugin.iml" filepath="$PROJECT_DIR$/tools/idea/teavm-idea-plugin.iml" />
|
||||
<module fileurl="file://$PROJECT_DIR$/tools/idea/jps-common/teavm-jps-common.iml" filepath="$PROJECT_DIR$/tools/idea/jps-common/teavm-jps-common.iml" />
|
||||
<module fileurl="file://$PROJECT_DIR$/tools/idea/jps-plugin/teavm-jps-plugin.iml" filepath="$PROJECT_DIR$/tools/idea/jps-plugin/teavm-jps-plugin.iml" />
|
||||
<module fileurl="file://$PROJECT_DIR$/interop/core/teavm-interop.iml" filepath="$PROJECT_DIR$/interop/core/teavm-interop.iml" />
|
||||
<module fileurl="file://$PROJECT_DIR$/jso/core/teavm-jso.iml" filepath="$PROJECT_DIR$/jso/core/teavm-jso.iml" />
|
||||
<module fileurl="file://$PROJECT_DIR$/jso/apis/teavm-jso-apis.iml" filepath="$PROJECT_DIR$/jso/apis/teavm-jso-apis.iml" />
|
||||
<module fileurl="file://$PROJECT_DIR$/jso/impl/teavm-jso-impl.iml" filepath="$PROJECT_DIR$/jso/impl/teavm-jso-impl.iml" />
|
||||
|
|
|
@ -1,20 +1,12 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4">
|
||||
<component name="CheckStyle-IDEA-Module">
|
||||
<option name="configuration">
|
||||
<map>
|
||||
<entry key="exclude-from-scan" value="true" />
|
||||
</map>
|
||||
</option>
|
||||
</component>
|
||||
<component name="FacetManager">
|
||||
<facet type="Osmorc" name="OSGi">
|
||||
<configuration manifestGenerationMode="OsmorcControlled" manifestLocation="" jarfileLocation="teavm-classlib-1.0.0-SNAPSHOT.jar" outputPathType="CompilerOutputPath" bndFileLocation="" bundlorFileLocation="" bundleActivator="" bundleSymbolicName="teavm-classlib" bundleVersion="1.0.0.SNAPSHOT" ignoreFilePattern="" useProjectDefaultManifestFileLocation="true" alwaysRebuildBundleJAR="false" doNotSynchronizeWithMaven="false">
|
||||
<additionalProperties>
|
||||
<property key="Bundle-Description" value="TeaVM Java class library emulation" />
|
||||
<property key="Export-Package" value="org.teavm.classlib.*" />
|
||||
<property key="Bundle-Name" value="TeaVM Java class library" />
|
||||
<property key="Include-Resource" value="org/teavm/classlib/impl/tz/tzdata2015d.zip=$MODULE_DIR$/src/main/resources/org/teavm/classlib/impl/tz/tzdata2015d.zip,org/teavm/classlib/impl/currency/iso3166.csv=$MODULE_DIR$/src/main/resources/org/teavm/classlib/impl/currency/iso3166.csv,org/teavm/classlib/impl/currency/iso4217.xml=$MODULE_DIR$/src/main/resources/org/teavm/classlib/impl/currency/iso4217.xml,org/teavm/classlib/impl/unicode/cldr-json.zip=$MODULE_DIR$/src/main/resources/org/teavm/classlib/impl/unicode/cldr-json.zip,org/teavm/classlib/impl/unicode/UnicodeData.txt=$MODULE_DIR$/src/main/resources/org/teavm/classlib/impl/unicode/UnicodeData.txt,html/methpro_obj.png=$MODULE_DIR$/src/main/resources/html/methpro_obj.png,html/enum_obj.png=$MODULE_DIR$/src/main/resources/html/enum_obj.png,html/class_obj.png=$MODULE_DIR$/src/main/resources/html/class_obj.png,html/annotation_obj.png=$MODULE_DIR$/src/main/resources/html/annotation_obj.png,html/methpub_obj.png=$MODULE_DIR$/src/main/resources/html/methpub_obj.png,html/jcl-class.html=$MODULE_DIR$/src/main/resources/html/jcl-class.html,html/package_obj.png=$MODULE_DIR$/src/main/resources/html/package_obj.png,html/field_public_obj.png=$MODULE_DIR$/src/main/resources/html/field_public_obj.png,html/jcl.html=$MODULE_DIR$/src/main/resources/html/jcl.html,html/jcl.css=$MODULE_DIR$/src/main/resources/html/jcl.css,html/field_protected_obj.png=$MODULE_DIR$/src/main/resources/html/field_protected_obj.png,html/int_obj.png=$MODULE_DIR$/src/main/resources/html/int_obj.png,META-INF/teavm.properties=$MODULE_DIR$/src/main/resources/META-INF/teavm.properties,META-INF/services/org.teavm.vm.spi.TeaVMPlugin=$MODULE_DIR$/src/main/resources/META-INF/services/org.teavm.vm.spi.TeaVMPlugin" />
|
||||
<property key="Include-Resource" value="META-INF/services/org.teavm.vm.spi.TeaVMPlugin=$MODULE_DIR$/src/main/resources/META-INF/services/org.teavm.vm.spi.TeaVMPlugin,META-INF/teavm.properties=$MODULE_DIR$/src/main/resources/META-INF/teavm.properties,html/field_public_obj.png=$MODULE_DIR$/src/main/resources/html/field_public_obj.png,html/methpro_obj.png=$MODULE_DIR$/src/main/resources/html/methpro_obj.png,html/int_obj.png=$MODULE_DIR$/src/main/resources/html/int_obj.png,html/jcl-class.html=$MODULE_DIR$/src/main/resources/html/jcl-class.html,html/enum_obj.png=$MODULE_DIR$/src/main/resources/html/enum_obj.png,html/jcl.css=$MODULE_DIR$/src/main/resources/html/jcl.css,html/field_protected_obj.png=$MODULE_DIR$/src/main/resources/html/field_protected_obj.png,html/class_obj.png=$MODULE_DIR$/src/main/resources/html/class_obj.png,html/package_obj.png=$MODULE_DIR$/src/main/resources/html/package_obj.png,html/methpub_obj.png=$MODULE_DIR$/src/main/resources/html/methpub_obj.png,html/annotation_obj.png=$MODULE_DIR$/src/main/resources/html/annotation_obj.png,html/jcl.html=$MODULE_DIR$/src/main/resources/html/jcl.html,org/teavm/classlib/impl/currency/iso4217.xml=$MODULE_DIR$/src/main/resources/org/teavm/classlib/impl/currency/iso4217.xml,org/teavm/classlib/impl/currency/iso3166.csv=$MODULE_DIR$/src/main/resources/org/teavm/classlib/impl/currency/iso3166.csv,org/teavm/classlib/impl/unicode/UnicodeData.txt=$MODULE_DIR$/src/main/resources/org/teavm/classlib/impl/unicode/UnicodeData.txt,org/teavm/classlib/impl/unicode/cldr-json.zip=$MODULE_DIR$/src/main/resources/org/teavm/classlib/impl/unicode/cldr-json.zip,org/teavm/classlib/impl/tz/tzdata2015d.zip=$MODULE_DIR$/src/main/resources/org/teavm/classlib/impl/tz/tzdata2015d.zip" />
|
||||
</additionalProperties>
|
||||
<additionalJARContents />
|
||||
</configuration>
|
||||
|
@ -35,15 +27,15 @@
|
|||
<orderEntry type="library" scope="TEST" name="Maven: org.hamcrest:hamcrest-core:1.3" level="project" />
|
||||
<orderEntry type="module" module-name="teavm-platform" />
|
||||
<orderEntry type="module" module-name="teavm-core" />
|
||||
<orderEntry type="module" module-name="teavm-metaprogramming-api" />
|
||||
<orderEntry type="module" module-name="teavm-jso-apis" />
|
||||
<orderEntry type="module" module-name="teavm-interop" />
|
||||
<orderEntry type="library" name="Maven: commons-io:commons-io:2.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.ow2.asm:asm-debug-all:5.0.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.carrotsearch:hppc:0.6.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.objenesis:objenesis:2.4" level="project" />
|
||||
<orderEntry type="module" module-name="teavm-jso" />
|
||||
<orderEntry type="module" module-name="teavm-jso-apis" />
|
||||
<orderEntry type="module" module-name="teavm-jso-impl" />
|
||||
<orderEntry type="library" name="Maven: org.mozilla:rhino:1.7.7" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.ow2.asm:asm-debug-all:5.0.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.google.code.gson:gson:2.2.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.jcraft:jzlib:1.1.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: joda-time:joda-time:2.7" level="project" />
|
||||
|
|
|
@ -37,7 +37,7 @@
|
|||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.teavm</groupId>
|
||||
<artifactId>teavm-metaprogramming-api</artifactId>
|
||||
<artifactId>teavm-interop</artifactId>
|
||||
<version>${project.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
|
|
|
@ -394,7 +394,24 @@ public class TypeInferer {
|
|||
@Override
|
||||
public void binary(BinaryOperation op, VariableReader receiver, VariableReader first, VariableReader second,
|
||||
NumericOperandType type) {
|
||||
switch (op) {
|
||||
case ADD:
|
||||
case SUBTRACT:
|
||||
case MULTIPLY:
|
||||
case DIVIDE:
|
||||
case MODULO:
|
||||
case AND:
|
||||
case OR:
|
||||
case XOR:
|
||||
case SHIFT_LEFT:
|
||||
case SHIFT_RIGHT:
|
||||
case SHIFT_RIGHT_UNSIGNED:
|
||||
types[receiver.getIndex()] = convert(type);
|
||||
break;
|
||||
case COMPARE:
|
||||
types[receiver.getIndex()] = VariableType.INT;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -15,10 +15,6 @@
|
|||
*/
|
||||
package org.teavm.model.util;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author Alexey Andreev
|
||||
*/
|
||||
public enum VariableType {
|
||||
INT,
|
||||
LONG,
|
||||
|
|
|
@ -85,7 +85,7 @@ public class TeaVMEntryPoint {
|
|||
return reference;
|
||||
}
|
||||
|
||||
String getPublicName() {
|
||||
public String getPublicName() {
|
||||
return publicName;
|
||||
}
|
||||
|
||||
|
|
|
@ -0,0 +1,70 @@
|
|||
/*
|
||||
* Copyright 2016 Alexey Andreev.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package org.teavm.wasm.generate;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import org.teavm.interop.Import;
|
||||
import org.teavm.model.AnnotationReader;
|
||||
import org.teavm.model.AnnotationValue;
|
||||
import org.teavm.model.ClassReader;
|
||||
import org.teavm.model.ClassReaderSource;
|
||||
import org.teavm.model.MethodReader;
|
||||
import org.teavm.model.MethodReference;
|
||||
|
||||
public class WasmGenerationContext {
|
||||
private ClassReaderSource classSource;
|
||||
private Map<MethodReference, ImportedMethod> importedMethods = new HashMap<>();
|
||||
|
||||
public WasmGenerationContext(ClassReaderSource classSource) {
|
||||
this.classSource = classSource;
|
||||
}
|
||||
|
||||
public ImportedMethod getImportedMethod(MethodReference reference) {
|
||||
return importedMethods.computeIfAbsent(reference, ref -> {
|
||||
ClassReader cls = classSource.get(ref.getClassName());
|
||||
if (cls == null) {
|
||||
return null;
|
||||
}
|
||||
MethodReader method = cls.getMethod(ref.getDescriptor());
|
||||
if (method == null) {
|
||||
return null;
|
||||
}
|
||||
AnnotationReader annotation = method.getAnnotations().get(Import.class.getName());
|
||||
if (annotation == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
String name = annotation.getValue("name").getString();
|
||||
AnnotationValue moduleValue = annotation.getValue("module");
|
||||
String module = moduleValue != null ? moduleValue.getString() : null;
|
||||
if (module != null && module.isEmpty()) {
|
||||
module = null;
|
||||
}
|
||||
return new ImportedMethod(name, module);
|
||||
});
|
||||
}
|
||||
|
||||
public class ImportedMethod {
|
||||
public final String name;
|
||||
public final String module;
|
||||
|
||||
ImportedMethod(String name, String module) {
|
||||
this.name = name;
|
||||
this.module = module;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -59,6 +59,7 @@ import org.teavm.ast.UnaryExpr;
|
|||
import org.teavm.ast.UnwrapArrayExpr;
|
||||
import org.teavm.ast.VariableExpr;
|
||||
import org.teavm.ast.WhileStatement;
|
||||
import org.teavm.model.MethodReference;
|
||||
import org.teavm.wasm.model.WasmFunction;
|
||||
import org.teavm.wasm.model.WasmLocal;
|
||||
import org.teavm.wasm.model.expression.WasmBlock;
|
||||
|
@ -83,10 +84,12 @@ import org.teavm.wasm.model.expression.WasmIntType;
|
|||
import org.teavm.wasm.model.expression.WasmReturn;
|
||||
import org.teavm.wasm.model.expression.WasmSetLocal;
|
||||
import org.teavm.wasm.model.expression.WasmSwitch;
|
||||
import org.teavm.wasm.runtime.WasmRuntime;
|
||||
|
||||
class WasmGenerationVisitor implements StatementVisitor, ExprVisitor {
|
||||
private int firstVariable;
|
||||
private WasmGenerationContext context;
|
||||
private WasmFunction function;
|
||||
private int firstVariable;
|
||||
private IdentifiedStatement currentContinueTarget;
|
||||
private IdentifiedStatement currentBreakTarget;
|
||||
private Map<IdentifiedStatement, WasmBlock> breakTargets = new HashMap<>();
|
||||
|
@ -94,7 +97,8 @@ class WasmGenerationVisitor implements StatementVisitor, ExprVisitor {
|
|||
private Set<WasmBlock> usedBlocks = new HashSet<>();
|
||||
WasmExpression result;
|
||||
|
||||
public WasmGenerationVisitor(WasmFunction function, int firstVariable) {
|
||||
WasmGenerationVisitor(WasmGenerationContext context, WasmFunction function, int firstVariable) {
|
||||
this.context = context;
|
||||
this.function = function;
|
||||
this.firstVariable = firstVariable;
|
||||
}
|
||||
|
@ -121,7 +125,9 @@ class WasmGenerationVisitor implements StatementVisitor, ExprVisitor {
|
|||
generateBinary(WasmIntBinaryOperation.REM_SIGNED, expr);
|
||||
break;
|
||||
default:
|
||||
WasmCall call = new WasmCall("rt$remainder." + typeAsString(expr.getType()), false);
|
||||
Class<?> type = convertType(expr.getType());
|
||||
MethodReference method = new MethodReference(WasmRuntime.class, "remainder", type, type, type);
|
||||
WasmCall call = new WasmCall(WasmMangling.mangleMethod(method), false);
|
||||
expr.getFirstOperand().acceptVisitor(this);
|
||||
call.getArguments().add(result);
|
||||
expr.getSecondOperand().acceptVisitor(this);
|
||||
|
@ -169,7 +175,9 @@ class WasmGenerationVisitor implements StatementVisitor, ExprVisitor {
|
|||
generateBinary(WasmIntBinaryOperation.SHR_UNSIGNED, expr);
|
||||
break;
|
||||
case COMPARE: {
|
||||
WasmCall call = new WasmCall("rt$compare." + typeAsString(expr.getType()), false);
|
||||
Class<?> type = convertType(expr.getType());
|
||||
MethodReference method = new MethodReference(WasmRuntime.class, "compare", type, type, int.class);
|
||||
WasmCall call = new WasmCall(WasmMangling.mangleMethod(method), false);
|
||||
expr.getFirstOperand().acceptVisitor(this);
|
||||
call.getArguments().add(result);
|
||||
expr.getSecondOperand().acceptVisitor(this);
|
||||
|
@ -231,16 +239,16 @@ class WasmGenerationVisitor implements StatementVisitor, ExprVisitor {
|
|||
}
|
||||
}
|
||||
|
||||
private String typeAsString(OperationType type) {
|
||||
private Class<?> convertType(OperationType type) {
|
||||
switch (type) {
|
||||
case INT:
|
||||
return "i32";
|
||||
return int.class;
|
||||
case LONG:
|
||||
return "i64";
|
||||
return long.class;
|
||||
case FLOAT:
|
||||
return "float";
|
||||
return float.class;
|
||||
case DOUBLE:
|
||||
return "double";
|
||||
return double.class;
|
||||
}
|
||||
throw new AssertionError(type.toString());
|
||||
}
|
||||
|
@ -491,7 +499,11 @@ class WasmGenerationVisitor implements StatementVisitor, ExprVisitor {
|
|||
public void visit(InvocationExpr expr) {
|
||||
if (expr.getType() == InvocationType.STATIC || expr.getType() == InvocationType.SPECIAL) {
|
||||
String methodName = WasmMangling.mangleMethod(expr.getMethod());
|
||||
|
||||
WasmCall call = new WasmCall(methodName);
|
||||
if (context.getImportedMethod(expr.getMethod()) != null) {
|
||||
call.setImported(true);
|
||||
}
|
||||
for (Expr argument : expr.getArguments()) {
|
||||
argument.acceptVisitor(this);
|
||||
call.getArguments().add(result);
|
||||
|
|
|
@ -32,10 +32,12 @@ import org.teavm.wasm.model.WasmLocal;
|
|||
public class WasmGenerator {
|
||||
private Decompiler decompiler;
|
||||
private ClassHolderSource classSource;
|
||||
private WasmGenerationContext context;
|
||||
|
||||
public WasmGenerator(Decompiler decompiler, ClassHolderSource classSource) {
|
||||
public WasmGenerator(Decompiler decompiler, ClassHolderSource classSource, WasmGenerationContext context) {
|
||||
this.decompiler = decompiler;
|
||||
this.classSource = classSource;
|
||||
this.context = context;
|
||||
}
|
||||
|
||||
public WasmFunction generate(MethodReference methodReference) {
|
||||
|
@ -62,10 +64,25 @@ public class WasmGenerator {
|
|||
function.setResult(WasmGeneratorUtil.mapType(methodReference.getReturnType()));
|
||||
}
|
||||
|
||||
WasmGenerationVisitor visitor = new WasmGenerationVisitor(function, firstVariable);
|
||||
WasmGenerationVisitor visitor = new WasmGenerationVisitor(context, function, firstVariable);
|
||||
methodAst.getBody().acceptVisitor(visitor);
|
||||
function.getBody().add(visitor.result);
|
||||
|
||||
return function;
|
||||
}
|
||||
|
||||
public WasmFunction generateNative(MethodReference methodReference) {
|
||||
WasmFunction function = new WasmFunction(WasmMangling.mangleMethod(methodReference));
|
||||
for (int i = 0; i < methodReference.parameterCount(); ++i) {
|
||||
function.getParameters().add(WasmGeneratorUtil.mapType(methodReference.parameterType(i)));
|
||||
}
|
||||
|
||||
WasmGenerationContext.ImportedMethod importedMethod = context.getImportedMethod(methodReference);
|
||||
if (importedMethod != null) {
|
||||
function.setImportName(importedMethod.name);
|
||||
function.setImportModule(importedMethod.module);
|
||||
}
|
||||
|
||||
return function;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -25,7 +25,8 @@ public final class WasmMangling {
|
|||
}
|
||||
|
||||
public static String mangleMethod(MethodReference method) {
|
||||
StringBuilder sb = new StringBuilder("method_" + mangleString(method.getClassName()) + "_");
|
||||
String className = method.getClassName().length() + mangleString(method.getClassName());
|
||||
StringBuilder sb = new StringBuilder("method$" + className + "_");
|
||||
String name = mangleString(method.getName());
|
||||
sb.append(mangleType(method.getReturnType()));
|
||||
sb.append(name.length() + "_" + name);
|
||||
|
@ -43,6 +44,15 @@ public final class WasmMangling {
|
|||
case '$':
|
||||
sb.append(c);
|
||||
break;
|
||||
case '.':
|
||||
sb.append("_g");
|
||||
break;
|
||||
case '<':
|
||||
sb.append("_h");
|
||||
break;
|
||||
case '>':
|
||||
sb.append("_i");
|
||||
break;
|
||||
case '_':
|
||||
sb.append("__");
|
||||
break;
|
||||
|
@ -88,7 +98,7 @@ public final class WasmMangling {
|
|||
return "A" + mangleType(((ValueType.Array) type).getItemType());
|
||||
} else if (type instanceof ValueType.Object) {
|
||||
String className = ((ValueType.Object) type).getClassName();
|
||||
return "L" + className.length() + "_" + className;
|
||||
return className.length() + "_" + mangleString(className);
|
||||
}
|
||||
throw new IllegalArgumentException("Don't know how to mangle " + type);
|
||||
}
|
||||
|
|
|
@ -24,7 +24,7 @@ import org.teavm.wasm.model.expression.WasmExpression;
|
|||
public class WasmFunction {
|
||||
WasmModule module;
|
||||
private String name;
|
||||
private boolean exported;
|
||||
private String exportName;
|
||||
private String importName;
|
||||
private String importModule;
|
||||
private List<WasmType> parameters = new ArrayList<>();
|
||||
|
@ -46,12 +46,12 @@ public class WasmFunction {
|
|||
return name;
|
||||
}
|
||||
|
||||
public boolean isExported() {
|
||||
return exported;
|
||||
public String getExportName() {
|
||||
return exportName;
|
||||
}
|
||||
|
||||
public void setExported(boolean exported) {
|
||||
this.exported = exported;
|
||||
public void setExportName(String exportName) {
|
||||
this.exportName = exportName;
|
||||
}
|
||||
|
||||
public String getImportName() {
|
||||
|
|
|
@ -16,12 +16,14 @@
|
|||
package org.teavm.wasm.model;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
public class WasmModule {
|
||||
private Map<String, WasmFunction> functions = new LinkedHashMap<>();
|
||||
private Map<String, WasmFunction> readonlyFunctions = Collections.unmodifiableMap(functions);
|
||||
private List<WasmFunction> functionTable = new ArrayList<>();
|
||||
|
||||
public void add(WasmFunction function) {
|
||||
|
@ -35,6 +37,10 @@ public class WasmModule {
|
|||
function.module = this;
|
||||
}
|
||||
|
||||
public Map<String, WasmFunction> getFunctions() {
|
||||
return readonlyFunctions;
|
||||
}
|
||||
|
||||
public List<WasmFunction> getFunctionTable() {
|
||||
return functionTable;
|
||||
}
|
||||
|
|
|
@ -18,35 +18,103 @@ package org.teavm.wasm.render;
|
|||
import java.util.List;
|
||||
import org.teavm.wasm.model.WasmFunction;
|
||||
import org.teavm.wasm.model.WasmLocal;
|
||||
import org.teavm.wasm.model.WasmModule;
|
||||
import org.teavm.wasm.model.WasmType;
|
||||
import org.teavm.wasm.model.expression.WasmExpression;
|
||||
|
||||
public class WasmRenderer {
|
||||
private WasmRenderingVisitor visitor = new WasmRenderingVisitor();
|
||||
|
||||
public void render(WasmFunction function) {
|
||||
visitor.open().append("func " + function.getName());
|
||||
for (WasmType type : function.getParameters()) {
|
||||
visitor.append(" ").open().append("param ").append(type).close();
|
||||
}
|
||||
if (function.getResult() != null) {
|
||||
visitor.append(" ").open().append("result ").append(function.getResult()).close();
|
||||
public WasmRenderer append(String text) {
|
||||
visitor.append(text);
|
||||
return this;
|
||||
}
|
||||
|
||||
public WasmRenderer lf() {
|
||||
visitor.lf();
|
||||
return this;
|
||||
}
|
||||
|
||||
public WasmRenderer indent() {
|
||||
visitor.indent();
|
||||
return this;
|
||||
}
|
||||
|
||||
public WasmRenderer outdent() {
|
||||
visitor.outdent();
|
||||
return this;
|
||||
}
|
||||
|
||||
public void render(WasmModule module) {
|
||||
visitor.open().append("module");
|
||||
for (WasmFunction function : module.getFunctions().values()) {
|
||||
if (function.getImportName() == null) {
|
||||
continue;
|
||||
}
|
||||
lf().renderImport(function);
|
||||
}
|
||||
for (WasmFunction function : module.getFunctions().values()) {
|
||||
if (function.getImportName() != null) {
|
||||
continue;
|
||||
}
|
||||
lf().render(function);
|
||||
}
|
||||
for (WasmFunction function : module.getFunctions().values()) {
|
||||
if (function.getExportName() == null) {
|
||||
continue;
|
||||
}
|
||||
lf().renderExport(function);
|
||||
}
|
||||
visitor.close().lf();
|
||||
}
|
||||
|
||||
public void renderImport(WasmFunction function) {
|
||||
String importModule = function.getImportModule();
|
||||
if (importModule == null) {
|
||||
importModule = "";
|
||||
}
|
||||
visitor.open().append("import $" + function.getName() + " \"" + importModule + "\" "
|
||||
+ "\"" + function.getName() + "\"");
|
||||
renderSignature(function);
|
||||
visitor.close();
|
||||
}
|
||||
|
||||
public void renderExport(WasmFunction function) {
|
||||
visitor.open().append("export \"" + function.getExportName() + "\" $" + function.getName()).close();
|
||||
}
|
||||
|
||||
public void render(WasmFunction function) {
|
||||
visitor.open().append("func $" + function.getName());
|
||||
renderSignature(function);
|
||||
|
||||
int firstLocalVariable = function.getParameters().size();
|
||||
if (firstLocalVariable > function.getLocalVariables().size()) {
|
||||
visitor.open().append("local");
|
||||
if (firstLocalVariable < function.getLocalVariables().size()) {
|
||||
visitor.lf().open().append("local");
|
||||
List<WasmLocal> locals = function.getLocalVariables().subList(firstLocalVariable,
|
||||
function.getLocalVariables().size());
|
||||
for (WasmLocal local : locals) {
|
||||
visitor.append(" " + local.getType());
|
||||
visitor.append(" ").append(local.getType());
|
||||
}
|
||||
visitor.close();
|
||||
}
|
||||
for (WasmExpression part : function.getBody()) {
|
||||
visitor.line(part);
|
||||
}
|
||||
visitor.close().lf().lf();
|
||||
visitor.close().lf();
|
||||
visitor.clear();
|
||||
}
|
||||
|
||||
private void renderSignature(WasmFunction function) {
|
||||
if (!function.getParameters().isEmpty()) {
|
||||
visitor.append(" ").open().append("param");
|
||||
for (WasmType type : function.getParameters()) {
|
||||
visitor.append(" ").append(type);
|
||||
}
|
||||
visitor.close();
|
||||
}
|
||||
if (function.getResult() != null) {
|
||||
visitor.append(" ").open().append("result ").append(function.getResult()).close();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -63,13 +63,11 @@ class WasmRenderingVisitor implements WasmExpressionVisitor {
|
|||
private Set<String> usedIdentifiers = new HashSet<>();
|
||||
StringBuilder sb = new StringBuilder();
|
||||
private Map<WasmBlock, String> blockIdentifiers = new HashMap<>();
|
||||
private Map<WasmLocal, String> localIdentifiers = new HashMap<>();
|
||||
private int indentLevel;
|
||||
private boolean lfDeferred;
|
||||
|
||||
void clear() {
|
||||
blockIdentifiers.clear();
|
||||
localIdentifiers.clear();
|
||||
usedIdentifiers.clear();
|
||||
}
|
||||
|
||||
|
@ -134,7 +132,7 @@ class WasmRenderingVisitor implements WasmExpressionVisitor {
|
|||
private void renderBlock(WasmBlock block, String name) {
|
||||
String id = getIdentifier("@block");
|
||||
blockIdentifiers.put(block, id);
|
||||
open().append(name + " " + id);
|
||||
open().append(name + " $" + id);
|
||||
for (WasmExpression part : block.getBody()) {
|
||||
line(part);
|
||||
}
|
||||
|
@ -144,7 +142,7 @@ class WasmRenderingVisitor implements WasmExpressionVisitor {
|
|||
@Override
|
||||
public void visit(WasmBranch expression) {
|
||||
String id = blockIdentifiers.get(expression.getTarget());
|
||||
open().append("br_if " + id);
|
||||
open().append("br_if $" + id);
|
||||
if (expression.getResult() != null) {
|
||||
line(expression.getResult());
|
||||
}
|
||||
|
@ -155,7 +153,7 @@ class WasmRenderingVisitor implements WasmExpressionVisitor {
|
|||
@Override
|
||||
public void visit(WasmBreak expression) {
|
||||
String id = blockIdentifiers.get(expression.getTarget());
|
||||
open().append("br ").append(id);
|
||||
open().append("br $").append(id);
|
||||
if (expression.getResult() != null) {
|
||||
line(expression.getResult());
|
||||
}
|
||||
|
@ -166,9 +164,9 @@ class WasmRenderingVisitor implements WasmExpressionVisitor {
|
|||
public void visit(WasmSwitch expression) {
|
||||
open().append("br_table ");
|
||||
for (WasmBlock target : expression.getTargets()) {
|
||||
append(blockIdentifiers.get(target)).append(" ");
|
||||
append("$" + blockIdentifiers.get(target)).append(" ");
|
||||
}
|
||||
append(blockIdentifiers.get(expression.getDefaultTarget()));
|
||||
append("$" + blockIdentifiers.get(expression.getDefaultTarget()));
|
||||
line(expression.getSelector());
|
||||
close();
|
||||
}
|
||||
|
@ -231,11 +229,8 @@ class WasmRenderingVisitor implements WasmExpressionVisitor {
|
|||
open().append("set_local " + asString(expression.getLocal())).line(expression.getValue()).close();
|
||||
}
|
||||
|
||||
private String asString(WasmLocal local) {
|
||||
return localIdentifiers.computeIfAbsent(local, l -> {
|
||||
String suggested = l.getName() != null ? l.getName() : "@local" + local.getIndex();
|
||||
return getIdentifier(suggested);
|
||||
});
|
||||
String asString(WasmLocal local) {
|
||||
return String.valueOf(local.getIndex());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -337,7 +332,7 @@ class WasmRenderingVisitor implements WasmExpressionVisitor {
|
|||
|
||||
@Override
|
||||
public void visit(WasmCall expression) {
|
||||
open().append(expression.isImported() ? "call_import" : "call").append(" " + expression.getFunctionName());
|
||||
open().append(expression.isImported() ? "call_import" : "call").append(" $" + expression.getFunctionName());
|
||||
for (WasmExpression argument : expression.getArguments()) {
|
||||
line(argument);
|
||||
}
|
||||
|
@ -356,7 +351,7 @@ class WasmRenderingVisitor implements WasmExpressionVisitor {
|
|||
|
||||
@Override
|
||||
public void visit(WasmDrop expression) {
|
||||
open().append("drop").line(expression.getOperand()).close();
|
||||
append(expression.getOperand());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -15,6 +15,8 @@
|
|||
*/
|
||||
package org.teavm.wasm.runtime;
|
||||
|
||||
import org.teavm.interop.Import;
|
||||
|
||||
public final class WasmRuntime {
|
||||
private WasmRuntime() {
|
||||
}
|
||||
|
@ -43,5 +45,6 @@ public final class WasmRuntime {
|
|||
return a - (double) (long) (a / b) * b;
|
||||
}
|
||||
|
||||
@Import(name = "print.i32")
|
||||
public static native void print(int a);
|
||||
}
|
||||
|
|
|
@ -4,7 +4,6 @@
|
|||
<facet type="Osmorc" name="OSGi">
|
||||
<configuration manifestGenerationMode="OsmorcControlled" manifestLocation="" jarfileLocation="teavm-core-1.0.0-SNAPSHOT.jar" outputPathType="CompilerOutputPath" bndFileLocation="" bundlorFileLocation="" bundleActivator="" bundleSymbolicName="teavm-core" bundleVersion="1.0.0.SNAPSHOT" ignoreFilePattern="" useProjectDefaultManifestFileLocation="true" alwaysRebuildBundleJAR="false" doNotSynchronizeWithMaven="false">
|
||||
<additionalProperties>
|
||||
<property key="Bundle-Description" value="TeaVM compiler and SPI" />
|
||||
<property key="Export-Package" value="org.teavm.*" />
|
||||
<property key="Bundle-Name" value="TeaVM core" />
|
||||
<property key="Include-Resource" value="org/teavm/javascript/runtime.js=$MODULE_DIR$/src/main/resources/org/teavm/javascript/runtime.js" />
|
||||
|
@ -27,7 +26,7 @@
|
|||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: junit:junit:4.11" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.hamcrest:hamcrest-core:1.3" level="project" />
|
||||
<orderEntry type="module" module-name="teavm-metaprogramming-api" />
|
||||
<orderEntry type="module" module-name="teavm-interop" />
|
||||
<orderEntry type="library" name="Maven: commons-io:commons-io:2.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.ow2.asm:asm-debug-all:5.0.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.carrotsearch:hppc:0.6.1" level="project" />
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="module" module-name="teavm-core" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-metaprogramming-api" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-interop" scope="PROVIDED" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: commons-io:commons-io:2.4" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.ow2.asm:asm-debug-all:5.0.4" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: com.carrotsearch:hppc:0.6.1" level="project" />
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8" inherit-compiler-output="false">
|
||||
<output url="file://$MODULE_DIR$/target/classes" />
|
||||
<output-test url="file://$MODULE_DIR$/target/test-classes" />
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" />
|
||||
|
@ -10,25 +11,21 @@
|
|||
<sourceFolder url="file://$MODULE_DIR$/src/test/resources" type="java-test-resource" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/target/generated-test-sources/test-annotations" isTestSource="true" generated="true" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/target/apidocs" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/target/classes" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/target/javadoc-bundle-options" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/target/javascript-tck" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/target/javascript-test" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/target/maven-archiver" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/target/test-classes" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="module" module-name="teavm-core" />
|
||||
<orderEntry type="module" module-name="teavm-metaprogramming-api" />
|
||||
<orderEntry type="module" module-name="teavm-interop" />
|
||||
<orderEntry type="library" name="Maven: commons-io:commons-io:2.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.ow2.asm:asm-debug-all:5.0.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.carrotsearch:hppc:0.6.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.objenesis:objenesis:2.4" level="project" />
|
||||
<orderEntry type="module" module-name="teavm-classlib" />
|
||||
<orderEntry type="module" module-name="teavm-platform" />
|
||||
<orderEntry type="module" module-name="teavm-jso" />
|
||||
<orderEntry type="module" module-name="teavm-jso-apis" />
|
||||
<orderEntry type="module" module-name="teavm-jso" />
|
||||
<orderEntry type="module" module-name="teavm-jso-impl" />
|
||||
<orderEntry type="library" name="Maven: org.mozilla:rhino:1.7.7" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.google.code.gson:gson:2.2.4" level="project" />
|
||||
|
@ -39,10 +36,10 @@
|
|||
<orderEntry type="library" name="Maven: org.netbeans.html:net.java.html.json.tck:1.2.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.netbeans.html:net.java.html.json:1.2.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.testng:testng:6.7" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: junit:junit:4.11" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.beust:jcommander:1.12" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.yaml:snakeyaml:1.6" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.netbeans.html:ko4j:1.2.3" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: junit:junit:4.11" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.hamcrest:hamcrest-core:1.3" level="project" />
|
||||
</component>
|
||||
</module>
|
68
interop/core/pom.xml
Normal file
68
interop/core/pom.xml
Normal file
|
@ -0,0 +1,68 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
~ Copyright 2016 Alexey Andreev.
|
||||
~
|
||||
~ Licensed under the Apache License, Version 2.0 (the "License");
|
||||
~ you may not use this file except in compliance with the License.
|
||||
~ You may obtain a copy of the License at
|
||||
~
|
||||
~ http://www.apache.org/licenses/LICENSE-2.0
|
||||
~
|
||||
~ Unless required by applicable law or agreed to in writing, software
|
||||
~ distributed under the License is distributed on an "AS IS" BASIS,
|
||||
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
~ See the License for the specific language governing permissions and
|
||||
~ limitations under the License.
|
||||
-->
|
||||
|
||||
<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">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
<parent>
|
||||
<groupId>org.teavm</groupId>
|
||||
<artifactId>teavm</artifactId>
|
||||
<version>1.0.0-SNAPSHOT</version>
|
||||
<relativePath>../..</relativePath>
|
||||
</parent>
|
||||
<artifactId>teavm-interop</artifactId>
|
||||
|
||||
<name>TeaVM interop API</name>
|
||||
<description>API that allows Java programs to interoperate with low-level languages like C in some low-level
|
||||
environments like WebAssembly and LLVM</description>
|
||||
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-jar-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<goals>
|
||||
<goal>test-jar</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-checkstyle-plugin</artifactId>
|
||||
<configuration>
|
||||
<configLocation>../../checkstyle.xml</configLocation>
|
||||
<propertyExpansion>config_loc=${basedir}/../..</propertyExpansion>
|
||||
<includeTestSourceDirectory>true</includeTestSourceDirectory>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-source-plugin</artifactId>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-javadoc-plugin</artifactId>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
</project>
|
29
interop/core/src/main/java/org/teavm/interop/Import.java
Normal file
29
interop/core/src/main/java/org/teavm/interop/Import.java
Normal file
|
@ -0,0 +1,29 @@
|
|||
/*
|
||||
* Copyright 2016 Alexey Andreev.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package org.teavm.interop;
|
||||
|
||||
import java.lang.annotation.ElementType;
|
||||
import java.lang.annotation.Retention;
|
||||
import java.lang.annotation.RetentionPolicy;
|
||||
import java.lang.annotation.Target;
|
||||
|
||||
@Retention(RetentionPolicy.RUNTIME)
|
||||
@Target({ ElementType.METHOD, ElementType.CONSTRUCTOR })
|
||||
public @interface Import {
|
||||
String name();
|
||||
|
||||
String module() default "";
|
||||
}
|
13
interop/core/teavm-interop.iml
Normal file
13
interop/core/teavm-interop.iml
Normal file
|
@ -0,0 +1,13 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4">
|
||||
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_5" inherit-compiler-output="false">
|
||||
<output url="file://$MODULE_DIR$/target/classes" />
|
||||
<output-test url="file://$MODULE_DIR$/target/test-classes" />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/target" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
</component>
|
||||
</module>
|
|
@ -5,7 +5,6 @@
|
|||
<output-test url="file://$MODULE_DIR$/target/test-classes" />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/target" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="module" module-name="teavm-core" />
|
||||
<orderEntry type="module" module-name="teavm-metaprogramming-api" />
|
||||
<orderEntry type="module" module-name="teavm-interop" />
|
||||
<orderEntry type="library" name="Maven: commons-io:commons-io:2.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.ow2.asm:asm-debug-all:5.0.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.carrotsearch:hppc:0.6.1" level="project" />
|
||||
|
|
|
@ -4,7 +4,6 @@
|
|||
<facet type="Osmorc" name="OSGi">
|
||||
<configuration manifestGenerationMode="OsmorcControlled" manifestLocation="" jarfileLocation="teavm-metaprogramming-api-1.0.0-SNAPSHOT.jar" outputPathType="CompilerOutputPath" bndFileLocation="" bundlorFileLocation="" bundleActivator="" bundleSymbolicName="teavm-metaprogramming-api" bundleVersion="1.0.0.SNAPSHOT" ignoreFilePattern="" useProjectDefaultManifestFileLocation="true" alwaysRebuildBundleJAR="false" doNotSynchronizeWithMaven="false">
|
||||
<additionalProperties>
|
||||
<property key="Bundle-Description" value="Declaration of interfaces and annotations for TeaVM metaprogramming" />
|
||||
<property key="Export-Package" value="org.teavm.metaprogramming.*" />
|
||||
<property key="Bundle-Name" value="TeaVM metaprogramming API" />
|
||||
</additionalProperties>
|
||||
|
|
|
@ -4,7 +4,6 @@
|
|||
<facet type="Osmorc" name="OSGi">
|
||||
<configuration manifestGenerationMode="OsmorcControlled" manifestLocation="" jarfileLocation="teavm-metaprogramming-impl-1.0.0-SNAPSHOT.jar" outputPathType="CompilerOutputPath" bndFileLocation="" bundlorFileLocation="" bundleActivator="" bundleSymbolicName="teavm-metaprogramming-api" bundleVersion="1.0.0.SNAPSHOT" ignoreFilePattern="" useProjectDefaultManifestFileLocation="true" alwaysRebuildBundleJAR="false" doNotSynchronizeWithMaven="false">
|
||||
<additionalProperties>
|
||||
<property key="Bundle-Description" value="Implementation of metaprogramming API" />
|
||||
<property key="Export-Package" value="org.teavm.metaprogramming.*" />
|
||||
<property key="Bundle-Name" value="TeaVM metaprogramming API implementation" />
|
||||
<property key="Include-Resource" value="META-INF/services/org.teavm.vm.spi.TeaVMPlugin=$MODULE_DIR$/src/main/resources/META-INF/services/org.teavm.vm.spi.TeaVMPlugin" />
|
||||
|
@ -19,12 +18,12 @@
|
|||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/target" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="module" module-name="teavm-core" />
|
||||
<orderEntry type="module" module-name="teavm-interop" />
|
||||
<orderEntry type="library" name="Maven: commons-io:commons-io:2.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.ow2.asm:asm-debug-all:5.0.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.carrotsearch:hppc:0.6.1" level="project" />
|
||||
|
|
|
@ -4,7 +4,6 @@
|
|||
<facet type="Osmorc" name="OSGi">
|
||||
<configuration manifestGenerationMode="OsmorcControlled" manifestLocation="" jarfileLocation="teavm-platform-1.0.0-SNAPSHOT.jar" outputPathType="CompilerOutputPath" bndFileLocation="" bundlorFileLocation="" bundleActivator="" bundleSymbolicName="teavm-platform" bundleVersion="1.0.0.SNAPSHOT" ignoreFilePattern="" useProjectDefaultManifestFileLocation="true" alwaysRebuildBundleJAR="false" doNotSynchronizeWithMaven="false">
|
||||
<additionalProperties>
|
||||
<property key="Bundle-Description" value="A low-level classes that help to implement Java class library" />
|
||||
<property key="Export-Package" value="org.teavm.platform.*" />
|
||||
<property key="Bundle-Name" value="TeaVM platform" />
|
||||
<property key="Include-Resource" value="META-INF/services/org.teavm.vm.spi.TeaVMPlugin=$MODULE_DIR$/src/main/resources/META-INF/services/org.teavm.vm.spi.TeaVMPlugin" />
|
||||
|
@ -24,7 +23,7 @@
|
|||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="module" module-name="teavm-core" />
|
||||
<orderEntry type="module" module-name="teavm-metaprogramming-api" />
|
||||
<orderEntry type="module" module-name="teavm-interop" />
|
||||
<orderEntry type="library" name="Maven: commons-io:commons-io:2.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.ow2.asm:asm-debug-all:5.0.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.carrotsearch:hppc:0.6.1" level="project" />
|
||||
|
|
|
@ -25,15 +25,15 @@
|
|||
<orderEntry type="module" module-name="teavm-classlib" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-platform" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-core" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-jso-apis" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-interop" scope="PROVIDED" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: commons-io:commons-io:2.4" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.ow2.asm:asm-debug-all:5.0.4" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: com.carrotsearch:hppc:0.6.1" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.objenesis:objenesis:2.4" level="project" />
|
||||
<orderEntry type="module" module-name="teavm-jso" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-jso-apis" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-jso-impl" scope="PROVIDED" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.mozilla:rhino:1.7.7" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.ow2.asm:asm-debug-all:5.0.4" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: com.google.code.gson:gson:2.2.4" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: com.jcraft:jzlib:1.1.3" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: joda-time:joda-time:2.7" level="project" />
|
||||
|
|
|
@ -14,8 +14,6 @@
|
|||
</facet>
|
||||
<facet type="gwt" name="GWT">
|
||||
<configuration>
|
||||
<setting name="compilerMaxHeapSize" value="1024" />
|
||||
<setting name="gwtScriptOutputStyle" value="DETAILED" />
|
||||
<setting name="gwtSdkUrl" value="file://$MAVEN_REPOSITORY$/com/google/gwt/gwt-dev/2.7.0/" />
|
||||
<setting name="gwtSdkType" value="maven" />
|
||||
<setting name="webFacet" value="Web" />
|
||||
|
@ -35,18 +33,18 @@
|
|||
<orderEntry type="module" module-name="teavm-classlib" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-platform" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-core" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-jso-apis" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-interop" scope="PROVIDED" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: commons-io:commons-io:2.4" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.ow2.asm:asm-debug-all:5.0.4" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: com.carrotsearch:hppc:0.6.1" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.objenesis:objenesis:2.4" level="project" />
|
||||
<orderEntry type="module" module-name="teavm-jso" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-jso-impl" scope="PROVIDED" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.mozilla:rhino:1.7.7" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.ow2.asm:asm-debug-all:5.0.4" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: com.google.code.gson:gson:2.2.4" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: com.jcraft:jzlib:1.1.3" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: joda-time:joda-time:2.7" level="project" />
|
||||
<orderEntry type="module" module-name="teavm-jso-apis" scope="PROVIDED" />
|
||||
<orderEntry type="library" name="Maven: org.jbox2d:jbox2d-library:2.2.1.1" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.jbox2d:jbox2d-library:sources:2.2.1.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apidesign.bck2brwsr:emul:rt:0.17" level="project" />
|
||||
|
@ -55,12 +53,12 @@
|
|||
<orderEntry type="library" scope="PROVIDED" name="Maven: javax.validation:validation-api:sources:1.0.0.GA" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.dukescript.canvas:html5-canvas:0.7.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.dukescript.canvas:canvas-api:0.7.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.netbeans.html:net.java.html.boot:1.2.3" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.apidesign.bck2brwsr:ko-bck2brwsr:bck2brwsr:0.17" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.netbeans.html:net.java.html.json:1.2.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.netbeans.html:net.java.html:1.2.3" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.netbeans.html:ko4j:1.2.3" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.netbeans.html:net.java.html.geo:1.2.3" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.netbeans.html:net.java.html.sound:1.2.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.netbeans.html:net.java.html.boot:1.2.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.netbeans.html:net.java.html:1.2.3" level="project" />
|
||||
</component>
|
||||
</module>
|
|
@ -18,6 +18,7 @@
|
|||
<output-test url="file://$MODULE_DIR$/target/test-classes" />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/target" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
|
@ -25,23 +26,18 @@
|
|||
<orderEntry type="module" module-name="teavm-classlib" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-platform" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-core" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-metaprogramming-api" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-jso-apis" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-interop" scope="PROVIDED" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: commons-io:commons-io:2.4" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.ow2.asm:asm-debug-all:5.0.4" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: com.carrotsearch:hppc:0.6.1" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.objenesis:objenesis:2.4" level="project" />
|
||||
<orderEntry type="module" module-name="teavm-jso-apis" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-jso" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-jso-impl" scope="PROVIDED" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.mozilla:rhino:1.7.7" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.ow2.asm:asm-debug-all:5.0.4" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: com.google.code.gson:gson:2.2.4" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: com.jcraft:jzlib:1.1.3" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: joda-time:joda-time:2.7" level="project" />
|
||||
<orderEntry type="module" module-name="teavm-jso" scope="PROVIDED" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: javax.servlet:javax.servlet-api:3.1.0" level="project" />
|
||||
</component>
|
||||
<component name="teavm">
|
||||
<option name="enabled" value="true" />
|
||||
<option name="mainClass" value="org.teavm.samples.hello.Client" />
|
||||
<option name="targetDirectory" value="$MODULE_DIR$/target/generated/js/teavm" />
|
||||
</component>
|
||||
</module>
|
|
@ -29,17 +29,17 @@
|
|||
<orderEntry type="module" module-name="teavm-classlib" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-platform" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-core" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-jso-apis" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-interop" scope="PROVIDED" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: commons-io:commons-io:2.4" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.ow2.asm:asm-debug-all:5.0.4" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: com.carrotsearch:hppc:0.6.1" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.objenesis:objenesis:2.4" level="project" />
|
||||
<orderEntry type="module" module-name="teavm-jso" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-jso-impl" scope="PROVIDED" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.mozilla:rhino:1.7.7" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.ow2.asm:asm-debug-all:5.0.4" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: com.google.code.gson:gson:2.2.4" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: com.jcraft:jzlib:1.1.3" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: joda-time:joda-time:2.7" level="project" />
|
||||
<orderEntry type="module" module-name="teavm-jso-apis" scope="PROVIDED" />
|
||||
</component>
|
||||
</module>
|
|
@ -25,18 +25,18 @@
|
|||
<orderEntry type="module" module-name="teavm-classlib" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-platform" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-core" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-jso-apis" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-interop" scope="PROVIDED" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: commons-io:commons-io:2.4" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.ow2.asm:asm-debug-all:5.0.4" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: com.carrotsearch:hppc:0.6.1" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.objenesis:objenesis:2.4" level="project" />
|
||||
<orderEntry type="module" module-name="teavm-jso-apis" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-jso" />
|
||||
<orderEntry type="module" module-name="teavm-jso-impl" scope="PROVIDED" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.mozilla:rhino:1.7.7" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.ow2.asm:asm-debug-all:5.0.4" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: com.google.code.gson:gson:2.2.4" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: com.jcraft:jzlib:1.1.3" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: joda-time:joda-time:2.7" level="project" />
|
||||
<orderEntry type="module" module-name="teavm-jso" />
|
||||
<orderEntry type="library" name="Maven: org.scala-lang:scala-library:2.11.7" level="project" />
|
||||
</component>
|
||||
</module>
|
|
@ -25,18 +25,18 @@
|
|||
<orderEntry type="module" module-name="teavm-classlib" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-platform" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-core" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-jso-apis" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-interop" scope="PROVIDED" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: commons-io:commons-io:2.4" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.ow2.asm:asm-debug-all:5.0.4" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: com.carrotsearch:hppc:0.6.1" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.objenesis:objenesis:2.4" level="project" />
|
||||
<orderEntry type="module" module-name="teavm-jso" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-jso-impl" scope="PROVIDED" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.mozilla:rhino:1.7.7" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.ow2.asm:asm-debug-all:5.0.4" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: com.google.code.gson:gson:2.2.4" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: com.jcraft:jzlib:1.1.3" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: joda-time:joda-time:2.7" level="project" />
|
||||
<orderEntry type="module" module-name="teavm-jso-apis" scope="PROVIDED" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: javax.servlet:javax.servlet-api:3.1.0" level="project" />
|
||||
</component>
|
||||
</module>
|
|
@ -25,18 +25,18 @@
|
|||
<orderEntry type="module" module-name="teavm-classlib" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-platform" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-core" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-jso-apis" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-interop" scope="PROVIDED" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: commons-io:commons-io:2.4" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.ow2.asm:asm-debug-all:5.0.4" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: com.carrotsearch:hppc:0.6.1" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.objenesis:objenesis:2.4" level="project" />
|
||||
<orderEntry type="module" module-name="teavm-jso" scope="PROVIDED" />
|
||||
<orderEntry type="module" module-name="teavm-jso-impl" scope="PROVIDED" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.mozilla:rhino:1.7.7" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.ow2.asm:asm-debug-all:5.0.4" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: com.google.code.gson:gson:2.2.4" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: com.jcraft:jzlib:1.1.3" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: joda-time:joda-time:2.7" level="project" />
|
||||
<orderEntry type="module" module-name="teavm-jso-apis" scope="PROVIDED" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: javax.servlet:javax.servlet-api:3.1.0" level="project" />
|
||||
</component>
|
||||
</module>
|
10
teavm.iml
10
teavm.iml
|
@ -1,20 +1,12 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4">
|
||||
<component name="CheckStyle-IDEA-Module">
|
||||
<option name="configuration">
|
||||
<map>
|
||||
<entry key="exclude-from-scan" value="true" />
|
||||
</map>
|
||||
</option>
|
||||
</component>
|
||||
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_5" inherit-compiler-output="false">
|
||||
<output url="file://$MODULE_DIR$/target/classes" />
|
||||
<output-test url="file://$MODULE_DIR$/target/test-classes" />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<excludeFolder url="file://$MODULE_DIR$/classlib" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/target" />
|
||||
</content>
|
||||
<orderEntry type="jdk" jdkName="1.8" jdkType="JavaSDK" />
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
</component>
|
||||
</module>
|
|
@ -11,62 +11,63 @@
|
|||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="module" module-name="teavm-core" />
|
||||
<orderEntry type="module" module-name="teavm-metaprogramming-api" />
|
||||
<orderEntry type="module" module-name="teavm-interop" />
|
||||
<orderEntry type="library" name="Maven: commons-io:commons-io:2.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.ow2.asm:asm-debug-all:5.0.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.carrotsearch:hppc:0.6.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.objenesis:objenesis:2.4" level="project" />
|
||||
<orderEntry type="module" module-name="teavm-classlib" />
|
||||
<orderEntry type="module" module-name="teavm-platform" />
|
||||
<orderEntry type="module" module-name="teavm-jso" />
|
||||
<orderEntry type="module" module-name="teavm-jso-apis" />
|
||||
<orderEntry type="module" module-name="teavm-jso-impl" />
|
||||
<orderEntry type="library" name="Maven: org.mozilla:rhino:1.7.7" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.google.code.gson:gson:2.2.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.jcraft:jzlib:1.1.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: joda-time:joda-time:2.7" level="project" />
|
||||
<orderEntry type="module" module-name="teavm-platform" />
|
||||
<orderEntry type="module" module-name="teavm-jso-apis" />
|
||||
<orderEntry type="module" module-name="teavm-jso-apis" production-on-test="" />
|
||||
<orderEntry type="module" module-name="teavm-metaprogramming-impl" />
|
||||
<orderEntry type="module" module-name="teavm-metaprogramming-api" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: junit:junit:4.11" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.hamcrest:hamcrest-core:1.3" level="project" />
|
||||
<orderEntry type="module" module-name="teavm-tooling" scope="TEST" />
|
||||
<orderEntry type="module" module-name="teavm-junit" scope="TEST" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.seleniumhq.selenium:selenium-java:2.47.2" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.seleniumhq.selenium:selenium-chrome-driver:2.47.2" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.seleniumhq.selenium:selenium-htmlunit-driver:2.47.2" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.seleniumhq.selenium:selenium-firefox-driver:2.47.2" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.seleniumhq.selenium:selenium-ie-driver:2.47.2" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.seleniumhq.selenium:selenium-safari-driver:2.47.2" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.seleniumhq.selenium:selenium-support:2.47.2" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.webbitserver:webbit:0.4.14" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: io.netty:netty:3.5.2.Final" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.seleniumhq.selenium:selenium-leg-rc:2.47.2" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.seleniumhq.selenium:selenium-remote-driver:2.47.2" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: cglib:cglib-nodep:2.1_3" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.seleniumhq.selenium:selenium-api:2.47.2" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.seleniumhq.selenium:selenium-htmlunit-driver:2.47.2" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: net.sourceforge.htmlunit:htmlunit:2.19" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.apache.httpcomponents:httpclient:4.4.1" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.apache.httpcomponents:httpcore:4.4.1" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: com.google.guava:guava:18.0" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.seleniumhq.selenium:selenium-firefox-driver:2.47.2" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.apache.commons:commons-exec:1.3" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.seleniumhq.selenium:selenium-ie-driver:2.47.2" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: net.java.dev.jna:jna:4.1.0" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: net.java.dev.jna:jna-platform:4.1.0" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.seleniumhq.selenium:selenium-safari-driver:2.47.2" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.webbitserver:webbit:0.4.14" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.seleniumhq.selenium:selenium-support:2.47.2" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: io.netty:netty:3.5.2.Final" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.seleniumhq.selenium:selenium-leg-rc:2.47.2" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: cglib:cglib-nodep:2.1_3" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.seleniumhq.selenium:selenium-api:2.47.2" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: com.google.guava:guava:18.0" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.apache.httpcomponents:httpcore:4.4.1" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: commons-logging:commons-logging:1.2" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: commons-codec:commons-codec:1.10" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.6.2" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.6.2" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: com.fasterxml.jackson.core:jackson-core:2.6.2" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: net.sourceforge.htmlunit:htmlunit:2.19" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: xalan:xalan:2.7.2" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: xalan:serializer:2.7.2" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: xml-apis:xml-apis:1.4.01" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: commons-collections:commons-collections:3.2.1" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.apache.commons:commons-lang3:3.4" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.apache.httpcomponents:httpmime:4.5.1" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: commons-codec:commons-codec:1.10" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: net.sourceforge.htmlunit:htmlunit-core-js:2.17" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: xerces:xercesImpl:2.11.0" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: xml-apis:xml-apis:1.4.01" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: net.sourceforge.nekohtml:nekohtml:1.9.22" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: net.sourceforge.cssparser:cssparser:0.9.18" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.w3c.css:sac:1.3" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: commons-logging:commons-logging:1.2" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.eclipse.jetty.websocket:websocket-client:9.2.13.v20150730" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.eclipse.jetty:jetty-util:9.2.13.v20150730" level="project" />
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.eclipse.jetty:jetty-io:9.2.13.v20150730" level="project" />
|
||||
|
|
|
@ -4,7 +4,6 @@
|
|||
<facet type="Osmorc" name="OSGi">
|
||||
<configuration manifestGenerationMode="OsmorcControlled" manifestLocation="" jarfileLocation="teavm-chrome-rdp-1.0.0-SNAPSHOT.jar" outputPathType="CompilerOutputPath" bndFileLocation="" bundlorFileLocation="" bundleActivator="" bundleSymbolicName="teavm-chrome-rdp" bundleVersion="1.0.0.SNAPSHOT" ignoreFilePattern="" useProjectDefaultManifestFileLocation="true" alwaysRebuildBundleJAR="false" doNotSynchronizeWithMaven="false">
|
||||
<additionalProperties>
|
||||
<property key="Bundle-Description" value="TeaVM debugging backend for Google Chrome RDP" />
|
||||
<property key="Export-Package" value="org.teavm.chromerdp" />
|
||||
<property key="Bundle-Name" value="TeaVM debugging backend for Google Chrome RDP" />
|
||||
</additionalProperties>
|
||||
|
@ -29,29 +28,29 @@
|
|||
<orderEntry type="library" name="Maven: org.eclipse.jetty.websocket:javax-websocket-server-impl:9.2.1.v20140609" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.eclipse.jetty:jetty-annotations:9.2.1.v20140609" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.eclipse.jetty:jetty-plus:9.2.1.v20140609" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.eclipse.jetty:jetty-jndi:9.2.1.v20140609" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.eclipse.jetty:jetty-webapp:9.2.1.v20140609" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.eclipse.jetty:jetty-jndi:9.2.1.v20140609" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.eclipse.jetty:jetty-xml:9.2.1.v20140609" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.eclipse.jetty:jetty-servlet:9.2.1.v20140609" level="project" />
|
||||
<orderEntry type="library" name="Maven: javax.annotation:javax.annotation-api:1.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.ow2.asm:asm:5.0.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.ow2.asm:asm-commons:5.0.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.ow2.asm:asm-tree:5.0.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.eclipse.jetty.websocket:javax-websocket-client-impl:9.2.1.v20140609" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.eclipse.jetty.websocket:websocket-client:9.2.1.v20140609" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.eclipse.jetty.websocket:websocket-server:9.2.1.v20140609" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.eclipse.jetty.websocket:websocket-common:9.2.1.v20140609" level="project" />
|
||||
<orderEntry type="library" name="Maven: javax.websocket:javax.websocket-api:1.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.eclipse.jetty.websocket:websocket-server:9.2.1.v20140609" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.eclipse.jetty.websocket:websocket-api:9.2.1.v20140609" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.eclipse.jetty.websocket:websocket-servlet:9.2.1.v20140609" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.eclipse.jetty:jetty-servlet:9.2.1.v20140609" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.eclipse.jetty:jetty-security:9.2.1.v20140609" level="project" />
|
||||
<orderEntry type="module" module-name="teavm-core" />
|
||||
<orderEntry type="module" module-name="teavm-metaprogramming-api" />
|
||||
<orderEntry type="module" module-name="teavm-interop" />
|
||||
<orderEntry type="library" name="Maven: commons-io:commons-io:2.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.ow2.asm:asm-debug-all:5.0.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.carrotsearch:hppc:0.6.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.objenesis:objenesis:2.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.7" level="project" />
|
||||
<orderEntry type="library" name="Maven: javax.websocket:javax.websocket-api:1.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.codehaus.jackson:jackson-core-asl:1.9.13" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.codehaus.jackson:jackson-mapper-asl:1.9.13" level="project" />
|
||||
</component>
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="module" module-name="teavm-tooling" />
|
||||
<orderEntry type="module" module-name="teavm-core" />
|
||||
<orderEntry type="module" module-name="teavm-metaprogramming-api" />
|
||||
<orderEntry type="module" module-name="teavm-interop" />
|
||||
<orderEntry type="library" name="Maven: commons-io:commons-io:2.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.ow2.asm:asm-debug-all:5.0.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.carrotsearch:hppc:0.6.1" level="project" />
|
||||
|
|
|
@ -21,10 +21,6 @@ import java.util.Properties;
|
|||
import org.teavm.model.ClassHolderTransformer;
|
||||
import org.teavm.tooling.sources.SourceFileProvider;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author Alexey Andreev
|
||||
*/
|
||||
public interface BaseTeaVMTool {
|
||||
void setTargetDirectory(File targetDirectory);
|
||||
|
||||
|
|
|
@ -15,10 +15,6 @@
|
|||
*/
|
||||
package org.teavm.tooling;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author Alexey Andreev
|
||||
*/
|
||||
public class ClassAlias {
|
||||
private String className;
|
||||
private String alias;
|
||||
|
|
|
@ -15,10 +15,6 @@
|
|||
*/
|
||||
package org.teavm.tooling;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author Alexey Andreev
|
||||
*/
|
||||
public class EmptyTeaVMToolLog implements TeaVMToolLog {
|
||||
@Override
|
||||
public void info(String text) {
|
||||
|
|
|
@ -29,10 +29,6 @@ import org.teavm.model.instructions.InvocationType;
|
|||
import org.teavm.model.instructions.NumericOperandType;
|
||||
import org.teavm.model.instructions.SwitchTableEntryReader;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author Alexey Andreev
|
||||
*/
|
||||
class InstructionLocationReader implements InstructionReader {
|
||||
private Set<String> resources;
|
||||
|
||||
|
|
|
@ -15,10 +15,6 @@
|
|||
*/
|
||||
package org.teavm.tooling;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author Alexey Andreev
|
||||
*/
|
||||
public class MethodAlias {
|
||||
private String alias;
|
||||
private String className;
|
||||
|
|
|
@ -15,10 +15,6 @@
|
|||
*/
|
||||
package org.teavm.tooling;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author Alexey Andreev
|
||||
*/
|
||||
public enum RuntimeCopyOperation {
|
||||
SEPARATE,
|
||||
MERGED,
|
||||
|
|
|
@ -26,10 +26,6 @@ import org.teavm.model.InstructionLocation;
|
|||
import org.teavm.model.MethodReference;
|
||||
import org.teavm.vm.TeaVM;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author Alexey Andreev
|
||||
*/
|
||||
public final class TeaVMProblemRenderer {
|
||||
private TeaVMProblemRenderer() {
|
||||
}
|
||||
|
|
|
@ -15,10 +15,6 @@
|
|||
*/
|
||||
package org.teavm.tooling;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author Alexey Andreev
|
||||
*/
|
||||
public class TeaVMToolException extends Exception {
|
||||
private static final long serialVersionUID = 579149191624783241L;
|
||||
|
||||
|
|
|
@ -15,10 +15,6 @@
|
|||
*/
|
||||
package org.teavm.tooling;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author Alexey Andreev
|
||||
*/
|
||||
public interface TeaVMToolLog {
|
||||
void info(String text);
|
||||
|
||||
|
|
|
@ -4,10 +4,9 @@
|
|||
<facet type="Osmorc" name="OSGi">
|
||||
<configuration manifestGenerationMode="OsmorcControlled" manifestLocation="" jarfileLocation="teavm-tooling-1.0.0-SNAPSHOT.jar" outputPathType="CompilerOutputPath" bndFileLocation="" bundlorFileLocation="" bundleActivator="" bundleSymbolicName="teavm-tooling" bundleVersion="1.0.0.SNAPSHOT" ignoreFilePattern="" useProjectDefaultManifestFileLocation="true" alwaysRebuildBundleJAR="false" doNotSynchronizeWithMaven="false">
|
||||
<additionalProperties>
|
||||
<property key="Bundle-Description" value="TeaVM API that helps to create tooling" />
|
||||
<property key="Export-Package" value="org.teavm.*" />
|
||||
<property key="Bundle-Name" value="TeaVM tooling core" />
|
||||
<property key="Include-Resource" value="org/teavm/tooling/test/junit.html=$MODULE_DIR$/src/main/resources/org/teavm/tooling/test/junit.html,org/teavm/tooling/test/junit-client.html=$MODULE_DIR$/src/main/resources/org/teavm/tooling/test/junit-client.html,org/teavm/tooling/test/res/tick-small-red.png=$MODULE_DIR$/src/main/resources/org/teavm/tooling/test/res/tick-small-red.png,org/teavm/tooling/test/res/class_obj.png=$MODULE_DIR$/src/main/resources/org/teavm/tooling/test/res/class_obj.png,org/teavm/tooling/test/res/junit.css=$MODULE_DIR$/src/main/resources/org/teavm/tooling/test/res/junit.css,org/teavm/tooling/test/res/junit-client.js=$MODULE_DIR$/src/main/resources/org/teavm/tooling/test/res/junit-client.js,org/teavm/tooling/test/res/methpub_obj.png=$MODULE_DIR$/src/main/resources/org/teavm/tooling/test/res/methpub_obj.png,org/teavm/tooling/test/res/tick-small.png=$MODULE_DIR$/src/main/resources/org/teavm/tooling/test/res/tick-small.png,org/teavm/tooling/test/res/control-000-small.png=$MODULE_DIR$/src/main/resources/org/teavm/tooling/test/res/control-000-small.png,org/teavm/tooling/test/res/junit-support.js=$MODULE_DIR$/src/main/resources/org/teavm/tooling/test/res/junit-support.js,org/teavm/tooling/test/res/package_obj.png=$MODULE_DIR$/src/main/resources/org/teavm/tooling/test/res/package_obj.png,org/teavm/tooling/test/res/toggle-small.png=$MODULE_DIR$/src/main/resources/org/teavm/tooling/test/res/toggle-small.png,org/teavm/tooling/test/res/toggle-small-expand.png=$MODULE_DIR$/src/main/resources/org/teavm/tooling/test/res/toggle-small-expand.png,org/teavm/tooling/main.html=$MODULE_DIR$/src/main/resources/org/teavm/tooling/main.html" />
|
||||
<property key="Include-Resource" value="org/teavm/tooling/test/junit.html=$MODULE_DIR$/src/main/resources/org/teavm/tooling/test/junit.html,org/teavm/tooling/test/res/junit.css=$MODULE_DIR$/src/main/resources/org/teavm/tooling/test/res/junit.css,org/teavm/tooling/test/res/tick-small.png=$MODULE_DIR$/src/main/resources/org/teavm/tooling/test/res/tick-small.png,org/teavm/tooling/test/res/tick-small-red.png=$MODULE_DIR$/src/main/resources/org/teavm/tooling/test/res/tick-small-red.png,org/teavm/tooling/test/res/toggle-small-expand.png=$MODULE_DIR$/src/main/resources/org/teavm/tooling/test/res/toggle-small-expand.png,org/teavm/tooling/test/res/control-000-small.png=$MODULE_DIR$/src/main/resources/org/teavm/tooling/test/res/control-000-small.png,org/teavm/tooling/test/res/junit-support.js=$MODULE_DIR$/src/main/resources/org/teavm/tooling/test/res/junit-support.js,org/teavm/tooling/test/res/class_obj.png=$MODULE_DIR$/src/main/resources/org/teavm/tooling/test/res/class_obj.png,org/teavm/tooling/test/res/package_obj.png=$MODULE_DIR$/src/main/resources/org/teavm/tooling/test/res/package_obj.png,org/teavm/tooling/test/res/methpub_obj.png=$MODULE_DIR$/src/main/resources/org/teavm/tooling/test/res/methpub_obj.png,org/teavm/tooling/test/res/junit-client.js=$MODULE_DIR$/src/main/resources/org/teavm/tooling/test/res/junit-client.js,org/teavm/tooling/test/res/toggle-small.png=$MODULE_DIR$/src/main/resources/org/teavm/tooling/test/res/toggle-small.png,org/teavm/tooling/test/junit-client.html=$MODULE_DIR$/src/main/resources/org/teavm/tooling/test/junit-client.html,org/teavm/tooling/main.html=$MODULE_DIR$/src/main/resources/org/teavm/tooling/main.html" />
|
||||
</additionalProperties>
|
||||
<additionalJARContents />
|
||||
</configuration>
|
||||
|
@ -24,7 +23,7 @@
|
|||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="module" module-name="teavm-core" />
|
||||
<orderEntry type="module" module-name="teavm-metaprogramming-api" />
|
||||
<orderEntry type="module" module-name="teavm-interop" />
|
||||
<orderEntry type="library" name="Maven: commons-io:commons-io:2.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.ow2.asm:asm-debug-all:5.0.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.carrotsearch:hppc:0.6.1" level="project" />
|
||||
|
|
|
@ -6,7 +6,6 @@
|
|||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/target" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
|
@ -15,48 +14,48 @@
|
|||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.hamcrest:hamcrest-core:1.3" level="project" />
|
||||
<orderEntry type="module" module-name="teavm-tooling" />
|
||||
<orderEntry type="module" module-name="teavm-core" />
|
||||
<orderEntry type="module" module-name="teavm-metaprogramming-api" />
|
||||
<orderEntry type="module" module-name="teavm-interop" />
|
||||
<orderEntry type="library" name="Maven: commons-io:commons-io:2.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.ow2.asm:asm-debug-all:5.0.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.carrotsearch:hppc:0.6.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.objenesis:objenesis:2.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.seleniumhq.selenium:selenium-java:2.47.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.seleniumhq.selenium:selenium-chrome-driver:2.47.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.seleniumhq.selenium:selenium-remote-driver:2.47.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.seleniumhq.selenium:selenium-htmlunit-driver:2.47.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: net.sourceforge.htmlunit:htmlunit:2.19" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpclient:4.4.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.seleniumhq.selenium:selenium-firefox-driver:2.47.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.commons:commons-exec:1.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.seleniumhq.selenium:selenium-ie-driver:2.47.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: net.java.dev.jna:jna:4.1.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: net.java.dev.jna:jna-platform:4.1.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.seleniumhq.selenium:selenium-safari-driver:2.47.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.seleniumhq.selenium:selenium-support:2.47.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.webbitserver:webbit:0.4.14" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.seleniumhq.selenium:selenium-support:2.47.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.netty:netty:3.5.2.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.seleniumhq.selenium:selenium-leg-rc:2.47.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.seleniumhq.selenium:selenium-remote-driver:2.47.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: cglib:cglib-nodep:2.1_3" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.google.code.gson:gson:2.3.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.seleniumhq.selenium:selenium-api:2.47.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpclient:4.4.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpcore:4.4.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.google.guava:guava:18.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.commons:commons-exec:1.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: net.java.dev.jna:jna:4.1.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: net.java.dev.jna:jna-platform:4.1.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpcore:4.4.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: commons-logging:commons-logging:1.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: commons-codec:commons-codec:1.10" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.6.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.6.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-core:2.6.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: net.sourceforge.htmlunit:htmlunit:2.19" level="project" />
|
||||
<orderEntry type="library" name="Maven: xalan:xalan:2.7.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: xalan:serializer:2.7.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: xml-apis:xml-apis:1.4.01" level="project" />
|
||||
<orderEntry type="library" name="Maven: commons-collections:commons-collections:3.2.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.commons:commons-lang3:3.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpmime:4.5.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: commons-codec:commons-codec:1.10" level="project" />
|
||||
<orderEntry type="library" name="Maven: net.sourceforge.htmlunit:htmlunit-core-js:2.17" level="project" />
|
||||
<orderEntry type="library" name="Maven: xerces:xercesImpl:2.11.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: xml-apis:xml-apis:1.4.01" level="project" />
|
||||
<orderEntry type="library" name="Maven: net.sourceforge.nekohtml:nekohtml:1.9.22" level="project" />
|
||||
<orderEntry type="library" name="Maven: net.sourceforge.cssparser:cssparser:0.9.18" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.w3c.css:sac:1.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: commons-io:commons-io:2.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: commons-logging:commons-logging:1.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.eclipse.jetty.websocket:websocket-client:9.2.13.v20150730" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.eclipse.jetty:jetty-util:9.2.13.v20150730" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.eclipse.jetty:jetty-io:9.2.13.v20150730" level="project" />
|
||||
|
|
|
@ -5,7 +5,6 @@
|
|||
<output-test url="file://$MODULE_DIR$/target/test-classes" />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/test/resources" type="java-test-resource" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/target" />
|
||||
|
@ -14,76 +13,76 @@
|
|||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="library" name="Maven: org.apache.maven:maven-plugin-api:3.3.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.maven:maven-model:3.3.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.codehaus.plexus:plexus-utils:3.0.20" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.apache.maven:maven-artifact:3.3.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.eclipse.sisu:org.eclipse.sisu.plexus:0.3.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: javax.enterprise:cdi-api:1.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: javax.annotation:jsr250-api:1.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: javax.inject:javax.inject:1" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.eclipse.sisu:org.eclipse.sisu.inject:0.3.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.codehaus.plexus:plexus-component-annotations:1.5.5" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.codehaus.plexus:plexus-classworlds:2.5.2" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.apache.maven.plugin-tools:maven-plugin-annotations:3.3" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.apache.maven:maven-core:3.3.3" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.apache.maven:maven-settings:3.3.3" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.apache.maven:maven-settings-builder:3.3.3" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.apache.maven:maven-builder-support:3.3.3" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.codehaus.plexus:plexus-interpolation:1.21" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.sonatype.plexus:plexus-sec-dispatcher:1.3" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.apache.maven:maven-repository-metadata:3.3.3" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.apache.maven:maven-model-builder:3.3.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.google.guava:guava:18.0" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.apache.maven:maven-aether-provider:3.3.3" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.eclipse.aether:aether-spi:1.0.2.v20150114" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.eclipse.aether:aether-impl:1.0.2.v20150114" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.eclipse.aether:aether-api:1.0.2.v20150114" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.eclipse.aether:aether-spi:1.0.2.v20150114" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.eclipse.aether:aether-util:1.0.2.v20150114" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.eclipse.aether:aether-impl:1.0.2.v20150114" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.sonatype.sisu:sisu-guice:no_aop:3.2.5" level="project" />
|
||||
<orderEntry type="library" name="Maven: javax.inject:javax.inject:1" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: aopalliance:aopalliance:1.0" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.codehaus.plexus:plexus-interpolation:1.21" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.codehaus.plexus:plexus-utils:3.0.20" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.codehaus.plexus:plexus-classworlds:2.5.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.codehaus.plexus:plexus-component-annotations:1.5.5" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.sonatype.plexus:plexus-sec-dispatcher:1.3" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.sonatype.plexus:plexus-cipher:1.4" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.apache.maven:maven-artifact:3.3.3" level="project" />
|
||||
<orderEntry type="module" module-name="teavm-tooling" />
|
||||
<orderEntry type="module" module-name="teavm-core" />
|
||||
<orderEntry type="module" module-name="teavm-metaprogramming-api" />
|
||||
<orderEntry type="module" module-name="teavm-interop" />
|
||||
<orderEntry type="library" name="Maven: commons-io:commons-io:2.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.ow2.asm:asm-debug-all:5.0.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.carrotsearch:hppc:0.6.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.objenesis:objenesis:2.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: commons-io:commons-io:2.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.seleniumhq.selenium:selenium-java:2.47.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.seleniumhq.selenium:selenium-chrome-driver:2.47.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.seleniumhq.selenium:selenium-remote-driver:2.47.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.seleniumhq.selenium:selenium-htmlunit-driver:2.47.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: net.sourceforge.htmlunit:htmlunit:2.18" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpclient:4.4.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.seleniumhq.selenium:selenium-firefox-driver:2.47.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.commons:commons-exec:1.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.seleniumhq.selenium:selenium-ie-driver:2.47.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: net.java.dev.jna:jna:4.1.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: net.java.dev.jna:jna-platform:4.1.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.seleniumhq.selenium:selenium-safari-driver:2.47.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.seleniumhq.selenium:selenium-support:2.47.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.webbitserver:webbit:0.4.14" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.seleniumhq.selenium:selenium-support:2.47.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.netty:netty:3.5.2.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.seleniumhq.selenium:selenium-leg-rc:2.47.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.seleniumhq.selenium:selenium-remote-driver:2.47.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: cglib:cglib-nodep:2.1_3" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.google.code.gson:gson:2.3.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.seleniumhq.selenium:selenium-api:2.47.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpclient:4.4.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpcore:4.4.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.google.guava:guava:18.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.commons:commons-exec:1.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: net.java.dev.jna:jna:4.1.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: net.java.dev.jna:jna-platform:4.1.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: commons-logging:commons-logging:1.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: commons-codec:commons-codec:1.10" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.6.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.6.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-core:2.6.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: net.sourceforge.htmlunit:htmlunit:2.18" level="project" />
|
||||
<orderEntry type="library" name="Maven: xalan:xalan:2.7.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: xalan:serializer:2.7.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: xml-apis:xml-apis:1.4.01" level="project" />
|
||||
<orderEntry type="library" name="Maven: commons-collections:commons-collections:3.2.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.commons:commons-lang3:3.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpmime:4.5" level="project" />
|
||||
<orderEntry type="library" name="Maven: commons-codec:commons-codec:1.10" level="project" />
|
||||
<orderEntry type="library" name="Maven: net.sourceforge.htmlunit:htmlunit-core-js:2.17" level="project" />
|
||||
<orderEntry type="library" name="Maven: xerces:xercesImpl:2.11.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: xml-apis:xml-apis:1.4.01" level="project" />
|
||||
<orderEntry type="library" name="Maven: net.sourceforge.nekohtml:nekohtml:1.9.22" level="project" />
|
||||
<orderEntry type="library" name="Maven: net.sourceforge.cssparser:cssparser:0.9.16" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.w3c.css:sac:1.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: commons-logging:commons-logging:1.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.eclipse.jetty.websocket:websocket-client:9.2.12.v20150709" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.eclipse.jetty:jetty-util:9.2.12.v20150709" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.eclipse.jetty:jetty-io:9.2.12.v20150709" level="project" />
|
||||
|
|
|
@ -1,17 +1,5 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4">
|
||||
<component name="FacetManager">
|
||||
<facet type="web" name="Web">
|
||||
<configuration>
|
||||
<descriptors>
|
||||
<deploymentDescriptor name="web.xml" url="file://$MODULE_DIR$/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/web.xml" />
|
||||
</descriptors>
|
||||
<webroots>
|
||||
<root url="file://$MODULE_DIR$/src/main/resources/archetype-resources/src/main/webapp" relative="/" />
|
||||
</webroots>
|
||||
</configuration>
|
||||
</facet>
|
||||
</component>
|
||||
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_5" inherit-compiler-output="false">
|
||||
<output url="file://$MODULE_DIR$/target/classes" />
|
||||
<output-test url="file://$MODULE_DIR$/target/test-classes" />
|
||||
|
|
Loading…
Reference in New Issue
Block a user