开源软件名称(OpenSource Name): FabricMC/fabric-language-kotlin开源软件地址(OpenSource Url): https://github.com/FabricMC/fabric-language-kotlin开源编程语言(OpenSource Language):
Kotlin
100.0%
开源软件介绍(OpenSource Introduction): fabric-language-kotlin
Fabric language module for Kotlin . Adds support for Kotlin exclusive entrypoints and bundles the Kotlin Stdlib as well as common kotlinx libraries.
Usage
Dependency
Add it as a dependency to your Gradle project:
dependencies {
modImplementation(" net.fabricmc:fabric-language-kotlin:1.8.1+kotlin.1.7.0" )
}
Adapter
Use the kotlin
adapter for your mod by setting the adapter
property in the fabric.mod.json
file.
Remember to the add a dependency entry to your fabric.mod.json
file:
{
"schemaVersion" : 1 ,
"entrypoints" : {
"main" : [
{
"adapter" : " kotlin" ,
"value" : " package.ClassName"
}
]
},
"depends" : {
"fabric-language-kotlin" : " >=1.8.1+kotlin.1.7.0"
}
}
For more info reference the fabric.mod.json documentation .
Do not forget to set the schemaVersion
to 1
or it will fall back to schema 0
and will not attempt to load entrypoints.
Entrypoint samples
Kind
Class reference
Function reference
Field reference
class
{
"adapter" : " kotlin" ,
"value" : " mymod.MyMod"
}
package mymod
class MyMod : ModInitializer {
override fun onInitialize () {
TODO ()
}
}
object
{
"adapter" : " kotlin" ,
"value" : " mymod.MyMod"
}
package mymod
object MyMod : ModInitializer {
override fun onInitialize () {
TODO ()
}
}
{
"adapter" : " kotlin" ,
"value" : " mymod.MyMod::init"
}
package mymod
object MyMod {
fun init () {
TODO ()
}
}
{
"adapter" : " kotlin" ,
"value" : " mymod.MyMod::initializer"
}
package mymod
object MyMod {
val initializer = ModInitializer {
TODO ()
}
}
companion object
{
"adapter" : " kotlin" ,
"value" : " mymod.MyMod$Companion"
}
package mymod
class MyMod {
companion object : ModInitializer {
override fun onInitialize () {
TODO ()
}
}
}
{
"adapter" : " kotlin" ,
"value" : " mymod.MyMod$Companion::init"
}
package mymod
class MyMod {
companion object {
fun init () {
TODO ()
}
}
}
{
"adapter" : " kotlin" ,
"value" : " mymod.MyMod$Companion::initializer"
}
package mymod
class MyMod {
companion object {
val initializer = ModInitializer {
TODO ()
}
}
}
top level
{
"adapter" : " kotlin" ,
"value" : " mymod.MyModKt::init"
}
File: src/main/kotlin/mymod/MyMod.kt
package mymod
fun init () {
TODO ()
}
Companion objects can be used by appending $Companion
to the class.
Take care of processResources
there , it might try to expand it, in that case escape it.
Bundled libraries
org.jetbrains.kotlin
namespace:
org.jetbrains.kotlinx
namespace:
Available Versions
https://maven.fabricmc.net/net/fabricmc/fabric-language-kotlin/
Updating README
Update the readme in templates/README.template.md
.
Run ./gradlew processMDTemplates
.
请发表评论