当我运行SBT时,我得到以下结果。我仍然可以继续工作,但警告/错误惹恼了我,并使我的终端变得混乱。你知道我该怎么解决这个问题吗?
java.lang.reflect.InaccessibleObjectException: Unable to make field private static final java.util.HashMap java.lang.ProcessEnvironment.theEnvironment accessible: module java.base does not "opens java.lang" to unnamed module @43016
at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354)
at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297)
at java.base/java.lang.reflect.Field.checkCanSetAccessible(Field.java:178)
at java.base/java.lang.reflect.Field.setAccessible(Field.java:172)
at au.com.onegeek.sbtdotenv.DirtyEnvironmentHack$.$anonfun$setEnv$1(DirtyEnvironmentHack.scala:42)
at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:23)
at scala.util.Try$.apply(Try.scala:213)
at au.com.onegeek.sbtdotenv.DirtyEnvironmentHack$.setEnv(DirtyEnvironmentHack.scala:38)
at au.com.onegeek.sbtdotenv.SbtDotenv$.configureEnvironment(SbtDotenv.scala:71)
at au.com.onegeek.sbtdotenv.SbtDotenv$autoImport$.$anonfun$dotEnv$1(SbtDotenv.scala:42)
at scala.Function1.$anonfun$compose$1(Function1.scala:49)
at scala.Function1.$anonfun$compose$1(Function1.scala:49)
at scala.Function1.$anonfun$compose$1(Function1.scala:49)
at scala.Function1.$anonfun$compose$1(Function1.scala:49)
at scala.Function1.$anonfun$compose$1(Function1.scala:49)
at scala.Function1.$anonfun$compose$1(Function1.scala:49)
at scala.Function1.$anonfun$compose$1(Function1.scala:49)
at sbt.Project$.setProject(Project.scala:501)
3条答案
按热度按时间pbossiut1#
堆栈跟踪提到“au.com.onegeek.sbtdotenv”,所以这显然来自https://github.com/mefellows/sbt-dotenv。
你可以尝试升级到该插件的最新版本,看看问题是否消失了。
如果没有,您可以将问题报告给维护人员。
在《回购自述文件》中,有一节介绍了类似错误:https://github.com/mefellows/sbt-dotenv#illegal-reflective-access-warnings
我不清楚这是相同的还是不同的。
dojqjjoe2#
假设
sbt-dotenv
是罪魁祸首,您可以尝试几种方法:1.创建一个
.jvmopts
并将其放置在您的工程根文件夹中。1.在
.env
变量中添加export
关键字前缀。这应该可以解决这个问题
cidc1ykv3#
问题来自
sbt-dotenv
。在项目的根文件夹中,只需创建包含以下行的
.jvmopts
文件: