1

Kotlin Native 0.5开始,我们可以将 kotlin 代码编译成framework用于集成到现有 iOS 项目中的代码。

我只是想知道怎么做?

我想要的是

  1. 使用命令行构建
  2. kotlin 本地 repo构建,以便我可以赶上最新的更新。
  3. 不使用 Gradle,这样我就不需要进行 gradle 项目设置。

我知道文件夹中有一个calculator示例,它添加了一个在项目中samples调用的额外步骤来执行魔术。但我不知道如何分开这一步。Compile Kotlin frameworkXcode

我尝试使用这样的命令行:../../dist/bin/kotlinc ./src/main/kotlin/org/konan/arithmeticparser/Parser.kt -produce framework -o asd.framework.

但是与 gradle build 相比,结果具有不同的结构。

这里有什么帮助吗?谢谢

4

2 回答 2

1

您可以在此处学习本教程。虽然它使用了gradle,但它基本上包含了一个为ios自动重建kotlin框架的脚本。我不确定这是您需要的,但您可以根据相同的原则编写一个 shell 脚本。

task lipo(type: Exec, dependsOn: 'build') {
def frameworks = files(
        "$buildDir/konan/bin/iphone/${frameworkName}.framework/$frameworkName",
        "$buildDir/konan/bin/iphone_sim/${frameworkName}.framework/$frameworkName"
)
def output = file("$buildDir/konan/bin/iphone_universal/${frameworkName}.framework/$frameworkName")
inputs.files frameworks
outputs.file output
executable = 'lipo'
args = frameworks.files
args += ['-create', '-output', output]
}
task copyFramework(type: Copy, dependsOn: lipo) {
    from("$buildDir/konan/bin/iphone") {
        include '*/Headers/*'
        include '*/Modules/*'
        include '*/Info.plist'
}
from "$buildDir/konan/bin/iphone_universal"
into "${rootProject.rootDir}/ios"
}
于 2018-08-09T05:45:35.520 回答
0

另一个教程在这里 https://kotlinlang.org/docs/tutorials/native/apple-framework.html 您可能使用 Gradle 作为构建系统,请参阅https://github.com/JetBrains/kotlin-native/blob /master/GRADLE_PLUGIN.md

于 2018-09-02T18:04:48.283 回答