在我玩2.0框架的Java项目,下面的行产生无论是在Eclipse和在SBT编译步骤错误:游戏框架:包javax.inject不存在
import javax.inject.*;
我已经添加了javax.inject
依赖关系我build.sbt文件:
libraryDependencies ++= Seq(
javaCore,
javaJdbc,
javaEbean,
javaWs,
javaFooBar,
cache,
"javax.inject" % "javax.inject" % "1",
"org.atmosphere" % "atmosphere-play" % "2.1.1"
)
和执行clean
,update
& eclipse with-source=true
疯狂:
[myproject] $ eclipse with-source=true
[info] About to create Eclipse project files for your project(s).
[info] Compiling 3 Scala sources and 12 Java sources to ./myproject/target/scala-2.11/classes...
[error] ./myproject/app/com/elements/legacy/LegacyController.java:3: object inject is not a member of package javax
[error] import javax.inject.*;
[error] ^
[error] one error found
[error] (compile:compile) Compilation failed
[info] Resolving jline#jline;2.11 ...
[error] Could not create Eclipse project files:
[error] Error evaluating task 'dependencyClasspath': error
我感觉sbt不会抛出错误,以防无法解析依赖关系(例如,上面的javaFooBar)。这怎么激活?
如何正确构建使用javax.inject的Play 2.0 Java项目?
非常感谢!
编辑:
扩展项目库列表/ plugins.sbt通过以下方式奏效了:
// The repositories
resolvers ++= Seq(
Resolver.sonatypeRepo("snapshots"),
Resolver.sonatypeRepo("releases"),
Resolver.typesafeRepo("snapshots"),
Resolver.typesafeRepo("releases")
)
由多诺万描述的dependencies
命令非常有用,检查是否依赖关系可以解决或不!
尝试删除常春藤本地缓存。 –
因此,我删除了我的主目录中的完整.ivy2目录,'clean','update'和'eclipse with-source = true',它抛出了与发布时相同的错误:/ –
也许您需要添加一些解析器。 类似于:'解析器+ = “Sonatype OSS快照”位于“https://oss.sonatype.org/content/repositories/snapshots”' –