面向 JVM 的只有 kotlin 源文件任务

当项目只有 kotlin 源文件时,最简单的方法就是使用 kotlinc 任务:

${kotlin.lib} 指向 kotlin 单独编译器解压的文件夹

如果一个项目包含多个根源文件,使用 src 定义路径:

  1. <target name="build">
  2. <kotlinc output="hello.jar">
  3. <src path="root1"/>
  4. <src path="root2"/>
  5. </kotlinc>
  6. </target>

面向 JVM 的有 kotlin 和 java 源文件

  1. <project name="Ant Task Test" default="build">
  2. <typedef resource="org/jetbrains/kotlin/ant/antlib.xml" classpath="${kotlin.lib}/kotlin-ant.jar"/>
  3. <kotlin2js src="root1" output="out.js"/>
  4. </target>
  5. </project>

面向 JavaScript 有前缀,后缀以及 sourcemap 选项

##面向 JavaScript 只有一个源码文件夹并有元信息的选项

如果你想要描述 javaScript/Kotlin 库的转换结果,mateInfo 选项是很有用的。如果 设置为 true 则编译附加 javaScript 文件时会创建二进制的元数据。这个文件会与转换结果一起发布

  1. <project name="Ant Task Test" default="build">
  2. <typedef resource="org/jetbrains/kotlin/ant/antlib.xml" classpath="${kotlin.lib}/kotlin-ant.jar"/>
  3. <target name="build">
  4. <!-- out.meta.js will be created, which contains binary descriptors -->
  5. <kotlin2js src="root1" output="out.js" metaInfo="true"/>
  6. </target>
  7. </project>

参考

下面是所有的元素和属性

#kotlinc 属性名字|描述|必须性|默认值

—-|—-|—-|—-|
src|要编译的Kotlin 文件或者文件夹|yes|
output|目标文件夹或 .jar 文件名 |yes|
classpath|类的完整路径|no|
classpathref|类的完整路径参考|no|
stdlib|”Kotlin-runtime.jar” 的完整路径|no|”“
includeRuntime|如果输出是 .jar 文件,是否 kotlin 运行时库是否包括在 jar 中|no|true

#withKotlin 属性