所以我只是出口一个基本的程序与一个库tornadofx-1.7.11.jar加上标准的Kotlin库。 我已经完全使用这个指南导出它。 我尝试在命令行中运行它,但收到此错误: Exception in thread “main” java.lang.NoClassDefFoundError: kotlin/jvm/internal/Intrinsics at main.app.AppKt.main(app.kt) Caused by: java.lang.ClassNotFoundException: kotlin.jvm.internal.Intrinsics at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) … 1 more 我在这里查了一下我的问题,它说我的错误与一个破碎的课程路径有关。 我不知道我在做什么课程,但是前面提到的指南只是提到了所有jar子的名字。 如果你真的想要它,这是我的课程路径: tornadofx-1.7.11.jar 。 只是一条线。 我不确定是否应该添加更多,但是我是这样做的。 如果需要,我在Intellij IDEA版本2017.2.6.IC-172.4574.11 。
最近我开始把我的Android项目从Java转换到Kotlin。 我在许多类中使用Retrofit从API中获取数据。 在我的项目中,有许多POJO,我需要手动将它们转换为数据类,因为它不适用于Android Studio的自动转换工具。 考虑我有模特类: public class LoginResponseMinimal { String firstName, lastName, token; public String getFirstName() { return firstName; } public void setFirstName(String firstName) { this.firstName = firstName; } public String getLastName() { return lastName; } public void setLastName(String lastName) { this.lastName = lastName; } public String getToken() { return token; } public void setToken(String […]
要加载一个新的APK,我需要清理每一个建设之前。 这就像编译器没有注意到我的代码更改。 这是我的配置: 我的项目完全在Kotlin Kotlin版本1.1.60 Gradle版本4.4 Android构建工具版本3.1.0-alpha04 Android Studio 3.0(稳定) Java 8 数据绑定已启用 使用Kapt 即时运行被禁用 我还没有确认Java代码是否会显示相同的问题。 有没有人看过这个,find了解决办法?
我如何设置layoutmanager到RecycleView使用kotlin作为java代码如下: mRecyclerView.setLayoutManager(mLinearLayoutManager);
对于makeSceneTransitionAnimation,有两个静态函数 public static ActivityOptionsCompat makeSceneTransitionAnimation(Activity activity, View sharedElement, String sharedElementName) 和 public static ActivityOptionsCompat makeSceneTransitionAnimation(Activity activity, Pair… sharedElements) 第一个函数调用在Kotlin中正常工作,但在调用第二个函数时,这两个调用都会返回错误 val imageTransition = Pair(imageView, imageView.getTransitionName()); val textTransition = Pair(textView, textView.getTransitionName()); val transitionList = Array(2, { imageTransition }); transitionList[1] = textTransition; val options = ActivityOptionsCompat.makeSceneTransitionAnimation(this, *transitionList); 和 val imageTransition = Pair(imageView, imageView.getTransitionName()); val textTransition = Pair(textView, textView.getTransitionName()); […]
我爱Jetbrain的IDE IDE及其人体工程学。 我最喜欢的工具之一是想法的重新排列代码“行动”(你可以通过按ctrl+shift+a )。 它重新排列java文件中的代码,以按字母顺序放置方法,并按照用户定义的有组织的方式排序字段。 无论出于何种原因,它不适用于Jetbrain自己的语言,kotlin :(。这更吸引人的事实是,kotlin快速修正方法上方的字段,而不是像大多数Java文件那样的文件开头。支持重新排列kotlin文件的代码?
我有一个val valuesMap = mutableMapOf()如果map的键不等于IgnoreCase的新值,我想添加新的值。 if(!valuesMap.keys.equalsIgnoreKeys(“value”)) { valuesMap.put(“value”, null) } 像这样的东西,但在kotlin我们只有等于键的方法。
我试图调用一个自定义对话框,但在这一行崩溃的应用程序: cd.show() 这就是我所说的: val cd = CustomDialog(this, applicationContext) cd.show() 这是错误的: java.lang.IllegalArgumentException:指定为非null的参数为null:方法kotlin.jvm.internal.Intrinsics.checkParameterIsNotNull,参数savedInstanceState 我遵循这个例子 ,它在java中工作,但转换成kotlin后失败
我怎样才能访问kotlin android中的strings.xml的值 class MainActivity : AppCompatActivity(), View.OnClickListener { override fun onClick(p0: View?) { getToastCalled(“”) TODO(“not implemented”) } private fun getToastCalled(message: String) { TODO(“not implemented”) } var btn: Button? = null; override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) var tv_name=findViewById(R.id.tv) as TextView btn=findViewById(R.id.button) as Button tv_name.setText(KtTest().name); (btn as Button).setOnClickListener(MainActivity@this) } }
Kotlin在编译时使用分离方式进行了空白检查,以“可空”? 和“notnullable”对象。 它有一个KAnnotator来帮助确定来自Java的对象是否为nullabale。 但是,如果不可空的类的某些部分发生了变化呢? 想想看,我们有一只猫,它肯定有一头可以咀嚼的头。 当我们问猫咪喵喵,它的脑袋me:着: package org.cat class CatHead(){ fun mew(){ println(“Mew”) } } class Cat(){ var head = CatHead() fun mew(){ head.mew() } } fun main(args:Array){ val cat = Cat() cat.mew() } 现在,让我们给这张漂亮的照片添加一个JAVA猫疯子(CatManiac.java),当他得到猫的头时, import org.cat.*; public class CatManiac { public static void cutCatHead(Cat cat){ cat.setHead(null); } } 所以如果我们把一只猫传给一个疯子,他肯定会削减它的头。 而猫咪怎么没有头说呢? fun main(args:Array){ val cat […]