diff --git a/libraries/examples/js-example/src/main/kotlin/sample/Hello.kt b/libraries/examples/js-example/src/main/kotlin/sample/Hello.kt
index ecef18ae3d8..b98a9973ad5 100644
--- a/libraries/examples/js-example/src/main/kotlin/sample/Hello.kt
+++ b/libraries/examples/js-example/src/main/kotlin/sample/Hello.kt
@@ -1,7 +1,9 @@
package sample
class Hello {
+ var x = 0
+
fun doSomething(): Unit {
- println("Hello world!")
+ x++
}
}
\ No newline at end of file
diff --git a/libraries/kotlin-install/pom.xml b/libraries/kotlin-install/pom.xml
index 7f4d8058f67..2d6cdb6efb0 100644
--- a/libraries/kotlin-install/pom.xml
+++ b/libraries/kotlin-install/pom.xml
@@ -122,6 +122,22 @@
true
+
+ org.jetbrains.kotlin:dartc
+ verify
+
+ install-file
+
+
+ org.jetbrains.kotlin
+ dartc
+ ${project.version}
+ jar
+ ${kotlin-sdk}/lib/js/dartc.jar
+ true
+ true
+
+
diff --git a/libraries/kotlin-maven-plugin/pom.xml b/libraries/kotlin-maven-plugin/pom.xml
index 1c097731cf1..8e351d9f45a 100644
--- a/libraries/kotlin-maven-plugin/pom.xml
+++ b/libraries/kotlin-maven-plugin/pom.xml
@@ -107,6 +107,14 @@
2.9
-->
+
+
+
+
+ org.jetbrains.kotlin
+ dartc
+ ${project.version}
+
src/main/java
diff --git a/libraries/kotlin-maven-plugin/src/main/java/org/jetbrains/kotlin/maven/K2JSCompilerMojo.java b/libraries/kotlin-maven-plugin/src/main/java/org/jetbrains/kotlin/maven/K2JSCompilerMojo.java
index f94c5924849..c73e7e78d53 100644
--- a/libraries/kotlin-maven-plugin/src/main/java/org/jetbrains/kotlin/maven/K2JSCompilerMojo.java
+++ b/libraries/kotlin-maven-plugin/src/main/java/org/jetbrains/kotlin/maven/K2JSCompilerMojo.java
@@ -10,6 +10,12 @@ import org.jetbrains.jet.cli.CompilerArguments;
*/
public class K2JSCompilerMojo extends KotlinBaseMojo {
+ /**
+ * The output JS file name
+ *
+ * @required
+ * @parameter default-value="${project.build.directory}/js/${project.artifactId}.js"
+ */
private String outFile;
@Override
diff --git a/libraries/kotlin-maven-plugin/src/main/java/org/jetbrains/kotlin/maven/K2JSCompilerPlugin.java b/libraries/kotlin-maven-plugin/src/main/java/org/jetbrains/kotlin/maven/K2JSCompilerPlugin.java
index 5396e79b0d9..7a6fddb30a0 100644
--- a/libraries/kotlin-maven-plugin/src/main/java/org/jetbrains/kotlin/maven/K2JSCompilerPlugin.java
+++ b/libraries/kotlin-maven-plugin/src/main/java/org/jetbrains/kotlin/maven/K2JSCompilerPlugin.java
@@ -13,6 +13,7 @@ import org.jetbrains.k2js.facade.K2JSTranslator;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
+import java.util.ArrayList;
import java.util.List;
import static kotlin.io.namespace.use;
@@ -22,10 +23,6 @@ import static kotlin.io.namespace.use;
*/
public class K2JSCompilerPlugin implements CompilerPlugin {
- /**
- * @required
- * @parameter default-value="${project.build.directory}/target/js/${project.artifactId}.js"
- */
private String outFile = "target/js/program.js";
public void processFiles(CompilerPluginContext context) {
@@ -38,8 +35,7 @@ public class K2JSCompilerPlugin implements CompilerPlugin {
@NotNull
@Override
public List getLibFiles() {
- // TODO
- return null;
+ return new ArrayList();
}
};
K2JSTranslator translator = new K2JSTranslator(config);
diff --git a/libraries/kotlin-maven-plugin/src/main/java/org/jetbrains/kotlin/maven/KotlinBaseMojo.java b/libraries/kotlin-maven-plugin/src/main/java/org/jetbrains/kotlin/maven/KotlinBaseMojo.java
index 1e39b85a749..fbcbc726a99 100644
--- a/libraries/kotlin-maven-plugin/src/main/java/org/jetbrains/kotlin/maven/KotlinBaseMojo.java
+++ b/libraries/kotlin-maven-plugin/src/main/java/org/jetbrains/kotlin/maven/KotlinBaseMojo.java
@@ -21,6 +21,14 @@ public abstract class KotlinBaseMojo extends AbstractMojo {
*/
private String src;
+ /**
+ * The output directory for bytecode classes
+ *
+ * @required
+ * @parameter default-value="${project.build.directory}/classes"
+ */
+ private String outputDir;
+
@Override
public void execute() throws MojoExecutionException, MojoFailureException {
arguments = createCompilerArguments();
@@ -28,6 +36,9 @@ public abstract class KotlinBaseMojo extends AbstractMojo {
if (src != null) {
arguments.setSrc(src);
}
+ if (outputDir != null) {
+ arguments.setOutputDir(outputDir);
+ }
configureCompilerArguments(arguments);
compiler.exec(System.err, arguments);