我正在尝试将基于PDE的大型OSGi代码库迁移到bndtools,但是我坚持让包含Scala代码的项目正常工作。仅包含Java代码的项目可以完美构建。 我正在使用Scala-IDE,并将Scala性质添加到项目中。构建此项目后,我在下面收到错误/ stacktrace。
这是.project文件:
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>com.sendrato.traxyz.positioning</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>bndtools.core.bndbuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.scala-ide.sdt.core.scalabuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.jdt.core.javanature</nature>
<nature>bndtools.core.bndnature</nature>
<nature>org.scala-ide.sdt.core.scalanature</nature>
</natures>
</projectDescription>
有人有类似的问题并且知道如何解决吗?
!ENTRY org.eclipse.core.resources 4 75 2020-08-15 11:10:48.050
!MESSAGE Errors occurred during the build.
!SUBENTRY 1 org.scala-ide.sdt.core 4 75 2020-08-15 11:10:48.050
!MESSAGE Errors running builder 'Scala Builder' on project 'com.sendrato.traxyz.positioning'.
!STACK 1
Java Model Exception: Java Model Status [cnf does not exist]
at org.eclipse.jdt.internal.core.JavaElement.newNotPresentException(JavaElement.java:573)
at org.eclipse.jdt.internal.core.JavaModelManager.getPerProjectInfoCheckExistence(JavaModelManager.java:2525)
at org.eclipse.jdt.internal.core.JavaProject.getPerProjectInfo(JavaProject.java:2382)
at org.eclipse.jdt.internal.core.JavaProject.getResolvedClasspath(JavaProject.java:2466)
at org.scalaide.core.internal.project.ScalaProject$.org$scalaide$core$internal$project$ScalaProject$$dependenciesForProject(ScalaProject.scala:127)
at org.scalaide.core.internal.project.ScalaProject$.$anonfun$exportedDependenciesForProjects$1(ScalaProject.scala:144)
at scala.collection.TraversableLike.$anonfun$flatMap$1(TraversableLike.scala:241)
at scala.collection.immutable.Set$Set2.foreach(Set.scala:130)
at scala.collection.TraversableLike.flatMap(TraversableLike.scala:241)
at scala.collection.TraversableLike.flatMap$(TraversableLike.scala:238)
at scala.collection.AbstractTraversable.flatMap(Traversable.scala:104)
at org.scalaide.core.internal.project.ScalaProject$.exportedDependenciesForProjects(ScalaProject.scala:144)
at org.scalaide.core.internal.project.ScalaProject.transitiveDependencies(ScalaProject.scala:207)
at org.scalaide.core.internal.project.SbtScopesBuildManager.$anonfun$findProjectsInError$3(SbtScopesBuildManager.scala:82)
at scala.collection.TraversableLike.$anonfun$flatMap$1(TraversableLike.scala:241)
at scala.collection.immutable.List.foreach(List.scala:389)
at scala.collection.TraversableLike.flatMap(TraversableLike.scala:241)
at scala.collection.TraversableLike.flatMap$(TraversableLike.scala:238)
at scala.collection.immutable.List.flatMap(List.scala:352)
at org.scalaide.core.internal.project.SbtScopesBuildManager.findProjectsInError(SbtScopesBuildManager.scala:81)
at org.scalaide.core.internal.project.SbtScopesBuildManager.$anonfun$build$2(SbtScopesBuildManager.scala:48)
at scala.collection.immutable.List.map(List.scala:283)
at org.scalaide.core.internal.project.SbtScopesBuildManager.build(SbtScopesBuildManager.scala:47)
at org.scalaide.core.internal.project.ScalaProject.build(ScalaProject.scala:596)
at org.scalaide.core.internal.builder.ScalaBuilder.build(ScalaBuilder.scala:111)
at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:832)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:220)
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:263)
at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:316)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:319)
at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:371)
at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:392)
at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:154)
at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:244)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)