我有一个使用jdt.core库的某个组件的项目。项目必须同时使用gradle和sbt作为依赖项,gradle解析所有依赖项并且SBT无法解析jdt:
SBT:
name := "launcher"
version := "1.0-SNAPSHOT"
libraryDependencies += "org.javassist" % "javassist" % "3.19.0-GA"
libraryDependencies += "commons-io" % "commons-io" % "2.5"
libraryDependencies += "org.osgi" % "org.osgi.core" % "6.0.0"
libraryDependencies += "org.eclipse.jdt" % "core" % "3.12.2"
libraryDependencies += "junit" % "junit" % "4.11" % "test"
fork in run := true
摇篮:
group 'name'
version '1.0-SNAPSHOT'
apply plugin: 'java'
sourceCompatibility = 1.8
repositories {
mavenCentral()
}
dependencies {
// https://mvnrepository.com/artifact/org.javassist/javassist
compile group: 'org.javassist', name: 'javassist', version: '3.19.0-GA'
// https://mvnrepository.com/artifact/commons-io/commons-io
compile group: 'commons-io', name: 'commons-io', version: '2.5'
testCompile group: 'junit', name: 'junit', version: '4.12'
compile group: 'org.osgi', name: 'org.osgi.core', version: '6.0.0'
compile 'org.eclipse.jdt:org.eclipse.jdt.core:3.12.2'
compile group: 'org.apache.commons', name: 'commons-io', version: '1.3.2'
}
正如您所看到的,导入的lybrary是相同的。但SBT返回此错误:
[info] Resolving org.eclipse.jdt#core;3.12.2 ...
[warn] module not found: org.eclipse.jdt#core;3.12.2
[warn] ==== local: tried
[warn] /Users/ricky/.ivy2/local/org.eclipse.jdt/core/3.12.2/ivys/ivy.xml
[warn] ==== public: tried
[warn] https://repo1.maven.org/maven2/org/eclipse/jdt/core/3.12.2/core-3.12.2.pom
[warn] ==== local-preloaded-ivy: tried
[warn] /Users/ricky/.sbt/preloaded/org.eclipse.jdt/core/3.12.2/ivys/ivy.xml
[warn] ==== local-preloaded: tried
[warn] file:////Users/ricky/.sbt/preloaded/org/eclipse/jdt/core/3.12.2/core-3.12.2.pom
[info] Resolving org.fusesource.jansi#jansi;1.4 ...
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: UNRESOLVED DEPENDENCIES ::
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: org.eclipse.jdt#core;3.12.2: not found
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn]
[warn] Note: Unresolved dependencies path:
[warn] org.eclipse.jdt:core:3.12.2 (/Users/ricky/git/cs474/riccardo_pressiani_guido_muscioni_giovanni_agugini_bassi_hw3_4/launcher/build.sbt#L13-14)
[warn] +- default:launcher_2.10:1.0-SNAPSHOT
sbt.ResolveException: unresolved dependency: org.eclipse.jdt#core;3.12.2: not found
at sbt.IvyActions$.sbt$IvyActions$$resolve(IvyActions.scala:313)
at sbt.IvyActions$$anonfun$updateEither$1.apply(IvyActions.scala:191)
at sbt.IvyActions$$anonfun$updateEither$1.apply(IvyActions.scala:168)
at sbt.IvySbt$Module$$anonfun$withModule$1.apply(Ivy.scala:156)
at sbt.IvySbt$Module$$anonfun$withModule$1.apply(Ivy.scala:156)
at sbt.IvySbt$$anonfun$withIvy$1.apply(Ivy.scala:133)
at sbt.IvySbt.sbt$IvySbt$$action$1(Ivy.scala:57)
at sbt.IvySbt$$anon$4.call(Ivy.scala:65)
at xsbt.boot.Locks$GlobalLock.withChannel$1(Locks.scala:93)
at xsbt.boot.Locks$GlobalLock.xsbt$boot$Locks$GlobalLock$$withChannelRetries$1(Locks.scala:78)
at xsbt.boot.Locks$GlobalLock$$anonfun$withFileLock$1.apply(Locks.scala:97)
at xsbt.boot.Using$.withResource(Using.scala:10)
at xsbt.boot.Using$.apply(Using.scala:9)
at xsbt.boot.Locks$GlobalLock.ignoringDeadlockAvoided(Locks.scala:58)
at xsbt.boot.Locks$GlobalLock.withLock(Locks.scala:48)
at xsbt.boot.Locks$.apply0(Locks.scala:31)
at xsbt.boot.Locks$.apply(Locks.scala:28)
at sbt.IvySbt.withDefaultLogger(Ivy.scala:65)
at sbt.IvySbt.withIvy(Ivy.scala:128)
at sbt.IvySbt.withIvy(Ivy.scala:125)
at sbt.IvySbt$Module.withModule(Ivy.scala:156)
at sbt.IvyActions$.updateEither(IvyActions.scala:168)
at sbt.Classpaths$$anonfun$sbt$Classpaths$$work$1$1.apply(Defaults.scala:1541)
at sbt.Classpaths$$anonfun$sbt$Classpaths$$work$1$1.apply(Defaults.scala:1537)
at sbt.Classpaths$$anonfun$doWork$1$1$$anonfun$121.apply(Defaults.scala:1572)
at sbt.Classpaths$$anonfun$doWork$1$1$$anonfun$121.apply(Defaults.scala:1570)
at sbt.Tracked$$anonfun$lastOutput$1.apply(Tracked.scala:37)
at sbt.Classpaths$$anonfun$doWork$1$1.apply(Defaults.scala:1575)
at sbt.Classpaths$$anonfun$doWork$1$1.apply(Defaults.scala:1569)
at sbt.Tracked$$anonfun$inputChanged$1.apply(Tracked.scala:60)
at sbt.Classpaths$.cachedUpdate(Defaults.scala:1592)
at sbt.Classpaths$$anonfun$updateTask$1.apply(Defaults.scala:1519)
at sbt.Classpaths$$anonfun$updateTask$1.apply(Defaults.scala:1471)
at scala.Function1$$anonfun$compose$1.apply(Function1.scala:47)
at sbt.$tilde$greater$$anonfun$$u2219$1.apply(TypeFunctions.scala:40)
at sbt.std.Transform$$anon$4.work(System.scala:63)
at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:228)
at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:228)
at sbt.ErrorHandling$.wideConvert(ErrorHandling.scala:17)
at sbt.Execute.work(Execute.scala:237)
at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:228)
at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:228)
at sbt.ConcurrentRestrictions$$anon$4$$anonfun$1.apply(ConcurrentRestrictions.scala:159)
at sbt.CompletionService$$anon$2.call(CompletionService.scala:28)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
[error] (*:update) sbt.ResolveException: unresolved dependency: org.eclipse.jdt#core;3.12.2: not found
[error] Total time: 6 s, completed Nov 12, 2017 3:46:52 PM
在解决昼夜平分点依赖性时,迹线会产生错误。我试图在网上看,但我找不到任何相关的东西。 我也尝试导入jdt的所有不同版本,并试图明确导入equinox库,但这不起作用。 它与我的代码无关,因为尝试导入正确的依赖项的空项目也会发生这种情况。
SBT-version:0.13和1.0.1
仅为sbt 0.13报告跟踪,但最新的跟踪报告也是如此。