首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Kotlin类星体示例不起作用

Kotlin类星体示例不起作用
EN

Stack Overflow用户
提问于 2016-04-19 13:03:53
回答 1查看 723关注 0票数 2

我正在测试Kotlin类星体演员的例子。类星体和科特林-强大的匹配,所以问题是,这个例子过时了吗?有什么文档可以让我了解如何使用Kotlin和类星体?

这是我的gradle.build文件。

代码语言:javascript
复制
group 'no.inmeta.kotlin.akka'
version '1.0-SNAPSHOT'

buildscript {
  ext.kotlin_version = '1.0.1'

repositories {
    mavenCentral()
}

dependencies {
    classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
 }
}
apply plugin: 'kotlin'

repositories {
    mavenCentral()
}

dependencies {
    compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
    compile "co.paralleluniverse:quasar-kotlin:0.7.4"
    testCompile "org.jetbrains.kotlin:kotlin-test:$kotlin_version"
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-04-21 08:03:25

我是类星团的一员。

这篇文章引用了类星体测试,你可以通过克隆类星体回购系统来运行,比如运行gradle :quasar-kotlin:build (需要安装Gradle ),但是对于新的项目/实验,我建议从现在使用最新Kotlin 1.0.1-2分支开始(并且为了简单,依赖于它的最新的类星体0.7.5-SNAPSHOT )。

从这个模板开始,我构建了这个项目 (关于如何配置它并在主自述中运行它的更多信息),它运行与普通程序而不是测试相同的类星体参与者测试。这是它的build.gradle

代码语言:javascript
复制
group 'no.inmeta.kotlin.akka'
version '1.0-SNAPSHOT'

buildscript {
    ext.kotlinVer = '1.0.1-2'

    repositories {
        mavenCentral()
    }

    dependencies {
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVer"
    }
}

apply plugin: 'kotlin'
apply plugin: 'application'

[compileJava, compileTestJava]*.options*.encoding = 'UTF-8'

sourceCompatibility = 1.8     // 1.7
targetCompatibility = 1.8     // 1.7

configurations {
    quasar
}

configurations.all {
    resolutionStrategy {
        failOnVersionConflict()
    }
}

repositories {
//    mavenLocal()
    mavenCentral()
    maven { url "https://oss.sonatype.org/content/repositories/releases" }
    maven { url 'https://oss.sonatype.org/content/repositories/snapshots' }
//    maven { url 'https://maven.java.net/content/repositories/snapshots' }
}

ext.classifier = ':jdk8' // ':'

ext.quasarVer  = '0.7.5-SNAPSHOT'

dependencies {
    compile "co.paralleluniverse:quasar-core:${quasarVer}${classifier}"
    compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlinVer"
    compile "org.jetbrains.kotlin:kotlin-reflect:$kotlinVer"
    compile "co.paralleluniverse:quasar-kotlin:${quasarVer}"

    quasar "co.paralleluniverse:quasar-core:${quasarVer}${classifier}@jar"
}

applicationDefaultJvmArgs = [
    "-Dco.paralleluniverse.fibers.verifyInstrumentation=true",
    "-Dco.paralleluniverse.fibers.detectRunawayFibers=false",
    "-javaagent:${configurations.quasar.singleFile}" // =v, =d
]

// mainClassName = 'co.paralleluniverse.kotlin.actors1.PingPongKt'
mainClassName = 'co.paralleluniverse.kotlin.actors2.PingPongWithDeferKt'

task wrapper(type: Wrapper) {
    gradleVersion = '2.12'
}

defaultTasks 'run'

关于与构建文件的差异的一些注意事项:

  • 由于我将测试转换为程序,我将包括application插件及其配置(这里是applicationDefaultJvmArgsmainClassName),并将默认的Gradle任务设置为run
  • 此外,已经生成并推送了一个gradle包装器,以便在命令行上只需要./gradlew,而不需要安装本地Gradle (如何在IDE中运行它取决于IDE)。
  • 您需要运行类星体代理(或者AoT工具,但在这里使用代理),因此有一个指向工件的quasar配置,然后用来传递-javaagent:${configurations.quasar.singleFile}参数。
  • 使用Java 8作为类星体,为其提供了特定的优化构建。

还需要注意的是,现在有一个项目 (实际上现在是HEAD ),它包含这个带IntelliJ的客座网络研讨会的配套源代码,也移植到最新的Kotlin和Quasar。

如果这有帮助的话请告诉我。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36719303

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档