草庐IT

initial-scale

全部标签

kotlin - kotlin中的java静态最终: Const 'val' initializer should be a constant value

在Java中,我们可以这样做:publicclassTestA{publicstaticfinalbooleanflag=true;publicstaticfinalStringstr=flag?"A":"B";//ok}但在Kotlin中不能classTestA{companionobject{constvalflag=trueconstvalstr=if(flag)"A"else"B"//err:Const'val'initializershouldbeaconstantvaluevalstr2=if(flag)"A"else"B"//ok,butnotequals[publics

kotlin - 委派给初始化属性时出现 "Variable must be initialized"错误

objectFoo:CharSequencebyFoo.X{valX=""}产生Variable'X'mustbeinitialized但确实如此!并且代码应该翻译成类似objectFoo:CharSequence{valX=""overridevallengthget()=Foo.X.lengthoverrideoperatorfunget(index:Int):Char=Foo.X[index]overridefunsubSequence(startIndex:Int,endIndex:Int)=Foo.X.subSequence(startIndex,endIndex)}效果很好

android - Dagger2 + Kotlin : lateinit property has not been initialized

我正在尝试将ViewModelFactory注入(inject)到我的Activity中,但它一直抛出同样的错误:lateinit属性viewModelFactory尚未初始化。我找不到我可能做错了什么。从我的类(class)中查看上面的代码AppComponent.kt@Component(modules=[(AppModule::class),(NetworkModule::class),(MainModule::class)])interfaceAppComponent{funinject(application:TweetSentimentsApplication)funinj

android - 未初始化的属性访问异常 : lateinit property pref has not been initialized

我知道有人回答了类似的问题Here.但那是由于黄油刀库问题,但我的情况不同。在我的情况下,当我在基本Activity中使用Dagger注入(inject)属性时,它会显示错误Causedby:kotlin.UninitializedPropertyAccessException:lateinitpropertyprefhasnotbeeninitialized但是当我在我的子Activity(登录Activity)中使用相同的属性时,它可以正常工作。例如。pref.setLanguage("abc")->它在登录Activity中工作正常,但在基本Activity中引发错误这是我的代码

oop - Kotlin: 'This type has a constructor and thus must be initialized here' ,但没有声明构造函数

最近开始使用Kotlin根据Kotlin文档,可以有一个主构造函数和一个或多个辅助构造函数。我不明白为什么我会看到这个错误由于类test没有主构造函数。这很好用:openclasstest{}classtest2:test(){}这是我遇到的另一个困难,当我定义辅助构造函数时,IDE显示另一个错误提示Supertypeinitializationisimpossiblewithoutprimaryconstructor但在前面的工作示例中,我确实对其进行了初始化,但它运行良好。我做错了什么? 最佳答案 您会收到此错误,因为即使您没有

initialization - 为什么 Kotlin 不允许将 lateinit 与原始类型一起使用?

在Kotlin语言中,默认情况下,我们必须在引入每个变量时对其进行初始化。为了避免这种情况,可以使用lateinit关键字。在初始化之前引用lateinit变量会导致运行时异常。但是,lateinit不能与原始类型一起使用。为什么会这样? 最佳答案 对于(不可为空的)对象类型,Kotlin使用null值来标记lateinit属性尚未初始化,并在该属性时抛出相应的异常被访问。对于原始类型,没有这样的值,因此无法将属性标记为未初始化并提供lateinit需要提供的诊断。(我们可以尝试使用某种单独的标记,但是当通过反射初始化字段时,该标记

Android Studio 2.3 : Could not initialize class org. jetbrains.kotlin.android.actions.NewKotlinActivityAction

我刚刚从金丝雀channel将AndroidStudio2.2.2更新为2.3。下载完成并应用路径文件后,androidstudio正在重新启动。但在重新启动androidstudio后,我收到以下对话框错误:Cannotloadproject:com.intellij.ide.plugins.PluginManager$StartupAbortedException:com.intellij.diagnostic.PluginException:Couldnotinitializeclassorg.jetbrains.kotlin.android.actions.NewKotlinA

docker - Gitlab runner + autoscaling + scaled runner 选项

我正在使用带有docker+machine执行程序的gitlab运行程序来启动AWS上的自动缩放运行程序。我想在运行者中使用docker-in-dockersetup来构建容器,但我不知道如何为生成的运行者定义所需的[runners.docker]属性以启用docker用法。是否有可能以某种方式将一些配置信息传递给自动缩放的运行者? 最佳答案 你只需要在你的自动缩放运行器的config.toml中使用这个:[runners.docker]privileged=true我使用docker-in-docker构建自己的php容器进行测试

scale - 如何在生产中扩展 Docker 容器

这个问题的答案是communityeffort.编辑现有答案以改进这篇文章。它目前不接受新的答案或互动。所以我最近发现了这个很棒的工具,它说Dockerisanopen-sourceprojecttoeasilycreatelightweight,portable,self-sufficientcontainersfromanyapplication.Thesamecontainerthatadeveloperbuildsandtestsonalaptopcanrunatscale,inproduction,onVMs,baremetal,OpenStackclusters,publi

node.js - 我可以使用 MongoDb 驱动程序从 node.js 调用 rs.initiate() 和 rs.Add() 吗?

我希望在使用Docker和Kubernetes时通过sidecar自动设置MongoDb副本集的过程。上述设置并不是很重要,归结为我需要能够调用mongo副本集命令(例如rs.initiate()、rs.add('anotherserver')、rs.conf()、rs.reconfig()等).js应用程序。注意:它不一定来自Node应用程序,如果有人知道完成相同事情的另一种方法,请分享您的想法。更新:我能够让这个工作,并让边车开源供其他人使用。https://github.com/leportlabs/mongo-k8s-sidecarhttps://registry.hub.do