【发布时间】:2013-10-21 07:38:56
【问题描述】:
我有一个基于 Play 框架 2.0.4 构建的应用程序。我想将它迁移到最新版本(目前是 2.2.0)。
所以我已经更新了我的本地 Play 框架安装,所有的构建文件都相应地:
build.properties:
sbt.version=0.13.0
Build.scala:
import sbt._
import Keys._
import play.Project._
object ApplicationBuild extends Build {
val appName = "demagog"
val appVersion = "1.0.0"
val appDependencies = Seq(
javaCore,
"com.google.code.morphia" % "morphia" % "0.99",
"com.google.code.morphia" % "morphia-logging-slf4j" % "0.99",
"net.tanesha.recaptcha4j" % "recaptcha4j" % "0.0.7"
)
val main = play.Project(appName, appVersion, appDependencies).settings(
// Add your own project settings here
resolvers += "Morphia repository" at "http://morphia.googlecode.com/svn/mavenrepo/"
)
}
plugins.sbt:
// Comment to get more information during initialization
logLevel := Level.Warn
// The Typesafe repository
resolvers += "Typesafe repository" at "http://repo.typesafe.com/typesafe/releases/"
// Use the Play sbt plugin for Play projects
addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.2.0")
然后我试图“使我的项目黯然失色”。所以我运行这两个命令:
play clean-all
play eclipse
我收到很多错误,例如:
[error] ..\Api.java:11: error: package org.codehaus.jackson does not exist
import org.codehaus.jackson.JsonNode;
这是预期的,因为我在Migration guide 中找到了:
我们已将 Jackson 升级到版本 2,这意味着包名称现在是 com.fasterxml.jackson.core 而不是 org.codehaus.jackson。
但是在“play eclipse”命令结束时我得到这个错误:
[error] (compile:compile) javac returned nonzero exit code
[error] Could not create Eclipse project files:
[error] Error evaluating task 'dependencyClasspath': error
所以该项目没有“被删除”,我不能使用它,也不能在我的 Eclipse IDE 中进行编辑。这种在 Eclipse IDE 之外的背景上编译真的很痛苦,并且使我无法使用 Play 框架进行生产:-/
【问题讨论】:
-
您是否考虑将所有导入从
org.codehaus.jackson更改为com.fasterxml.jackson.core? -
好吧,由于新的 2.2.0 api,我的整个应用程序有大约 50 个错误。我想在类路径上创建包含所有引用库的 Eclipse 项目,这样我就可以在 Eclipse IDE 中修复这些错误,而不是在文本编辑器中一一修复。
标签: eclipse playframework playframework-2.0