gpt4 book ai didi

java - 从 Java 程序编译 scala 代码时出现异常

转载 作者:行者123 更新时间:2023-12-02 10:56:17 26 4
gpt4 key购买 nike

我有以下代码在 Java 程序运行时编译 scala 代码

    Settings s = new Settings();
Global g = new Global(s);
Global.Run run = g.new Run();
List<String> files = new LinkedList<>();

files.add("src/main/java/scala/rules/ScalaRuleBasedStrategy.scala");

run.compile(JavaConverters.asScalaBufferConverter(files)
.asScala().toList());

但我收到此错误:

线程“main”中出现异常 java.lang.NoSuchMethodError: scala.tools.nsc.Global$gen$.mkBlock(Lscala/collection/immutable/List;)Lscala/reflect/internal/Trees$Tree; 在 scala.tools.nsc.ast.parser.TreeBuilder.makeBlock(TreeBuilder.scala:110) 在 scala.tools.nsc.ast.parser.Parsers$Parser.block(Parsers.scala:1689)

最佳答案

尝试

Settings s = new Settings();
MutableSettings.BooleanSetting usejavacp = s.usejavacp(); // added
usejavacp.value_$eq(true); // added
Global g = new Global(s);
Global.Run run = g.new Run();
List<String> files = new LinkedList<>();

files.add("src/main/java/scala/rules/ScalaRuleBasedStrategy.scala");

run.compile(
JavaConverters.asScalaBufferConverter(files)
.asScala().toList()
);

关于java - 从 Java 程序编译 scala 代码时出现异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51705335/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com