Kotlin:未解决的参考:javaClass

我希望有人遇到了我在构建我的java / Kotlin项目时遇到的问题。 该项目与java和kotlin互操作,具有以下版本:

  • Jdk 1.7
  • Kotlin 0.9.66
  • Gradle(包装)2.0

Kotlin已经编译好之前,我做了一些改变,即转换几个Java类到相当于kotlin版本。

这里是我看到的错误:

c:\projects\myproject>gradlew :java:workspace:models:compileKotlin --stacktrace :java:workspace:models:compileKotlin w: Annotations path entry points to a non-existent location: C:\projects\myproject\java\workspace\models\annotations e: C:\projects\CustomerProfileEmail.kt: (15, 32): Unresolved reference: toLowerCase e: C:\projects\CustomerProfilePhone.kt: (34, 22): Unresolved reference: equalsIgnoreCase e: C:\projects\Account.kt: (17, 21): Unresolved reference: javaClass e: C:\projects\Account.kt: (18, 21): Unresolved reference: javaClass e: C:\projects\Account.kt: (31, 15): Unresolved reference: indexOf e: C:\projects\Account.kt: (35, 15): Expression 'length' of type 'kotlin.Int' cannot be invoked as a function. The function invoke() is not found e: C:\projects\Account.kt: (39, 15): Expression 'length' of type 'kotlin.Int' cannot be invoked as a function. The function invoke() is not found e: C:\projects\Balance.kt: (10, 21): Unresolved reference: javaClass e: C:\projects\Balances.kt: (12, 21): Unresolved reference: firstOrNull e: C:\projects\Balances.kt: (12, 35): Cannot infer a type for this parameter. To specify it explicitly use the {(p : Type) -> ...} notation e: C:\projects\Debit.kt: (7, 12):Unresolved reference: javaClass e: C:\projects\ProgramR.kt: (12, 21): Unresolved reference: javaClass e: C:\projects\ProgramR.kt: (13, 21): Unresolved reference: javaClass e: C:\projects\Transaction.kt: (7, 12): Unresolved reference: javaClass e: C:\projects\Transaction.kt: (7, 40): Unresolved reference: javaClass e: C:\projects\Adjustment.kt: (13,21): Unresolved reference: javaClass e: C:\projects\Reward.kt: (12, 24): Unresolved reference: javaClass :java:workspace:models:compileKotlin FAILED FAILURE: Build failed with an exception. 

这里是一个源代码的例子:

 import javax.xml.bind.annotation.* XmlAccessorType(XmlAccessType.FIELD) XmlType XmlSeeAlso(javaClass<LoyaltyCredit>(), javaClass<Debit>()) public open class Transaction: TransactionParent(){ public var account: Account? = null public var balances: Balances? = null public var rewards: Rewards? = null } 

Gradle脚本

 repositories { mavenCentral() } buildscript { repositories { mavenCentral() } dependencies { classpath 'com.connorgarvey.gradle:gradle-grails-wrapper:1.0' classpath 'org.jetbrains.kotlin:kotlin-gradle-plugin:0.9.66' classpath 'org.jetbrains.kotlin:kotlin-stdlib:0.9.66' } } apply from: 'build/includes.gradle' 

我已经看到这个: https : //devnet.jetbrains.net/message/5478050没有帮助。

任何帮助将不胜感激!

比较你的脚本与关于Gradle的Kotlin 参考 。

Kotlin Stdlib依赖应该在另一个范围内,而不是buildscript 。 Kotlin插件也应该使用apply pluginapply plugin