在Java中,我可以使用以下代码:
public class Ex { public static void main(String [ ] args) { String path = Ex.class.getProtectionDomain().getCodeSource().getLocation().getPath(); String decodedPath = URLDecoder.decode(path, "UTF-8"); } }
但是在Kotlin中,主要功能是在课外定义的.我怎样才能得到它的当前文件名?
作为解决方法,将main
方法放入伴随对象.
此代码将显示与Java代码相同的路径:
class ExKt { companion object { @JvmStatic fun main(args: Array) { val path = ExKt::class.java.protectionDomain.codeSource.location.path println("Kotlin: " + path) } } }