Playframework 2.0 如何设置播放以从自定义目录读取消息文件?
在Playframework 2.0 如何设置播放以从自定义目录读取消息文件?,playframework-2.0,sbt,Playframework 2.0,Sbt,在build.scala中,我更改了消息文件的路径,如下所示: val main = play.Project(appName, appVersion, appDependencies).settings( lessEntryPoints <<= baseDirectory(_ / "app" / "assets" / "stylesheets" ** "main.less"), resolvers += "Local Maven Repository" at "fi
build.scala
中,我更改了消息文件的路径,如下所示:
val main = play.Project(appName, appVersion, appDependencies).settings(
lessEntryPoints <<= baseDirectory(_ / "app" / "assets" / "stylesheets" ** "main.less"),
resolvers += "Local Maven Repository" at "file://"+Path.userHome.absolutePath+"/.m2/repository",
resolvers += "maven2 repository" at "http://repo1.maven.org/maven2/",
unmanagedBase <<= baseDirectory(_ / ".." / "messagesFiles")
)
[myFirstApp] $ show unmanagedResourceDirectories
[info] List(/Users/jacek/sandbox/play-ground/myFirstApp/conf, /Users/jacek/sandbox/play-ground/myFirstApp/messagesFiles)
val main=play.Project(appName、appVersion、appDependencies)。设置(
LessureTryPoints您尚未描述有关play版本的环境,因此让我假设您使用的是最新版本play2.2.2-RC1
。我的是
[myFirstApp] $ show playVersion
[info] 2.2.2-RC1
给定播放版本,在大多数情况下,您可以使用build.sbt
配置项目。如果项目中没有,请创建一个
将以下行添加到build.sbt
中,以指向特定于语言的消息文件所在的自定义目录
unmanagedResourceDirectories in Compile += baseDirectory.value / "messagesFiles"
我不确定指定messages目录是否是最推荐的方法,但考虑到sbt的工作方式,它确实起到了作用
您可以显示非托管源目录设置的值,如下所示:
val main = play.Project(appName, appVersion, appDependencies).settings(
lessEntryPoints <<= baseDirectory(_ / "app" / "assets" / "stylesheets" ** "main.less"),
resolvers += "Local Maven Repository" at "file://"+Path.userHome.absolutePath+"/.m2/repository",
resolvers += "maven2 repository" at "http://repo1.maven.org/maven2/",
unmanagedBase <<= baseDirectory(_ / ".." / "messagesFiles")
)
[myFirstApp] $ show unmanagedResourceDirectories
[info] List(/Users/jacek/sandbox/play-ground/myFirstApp/conf, /Users/jacek/sandbox/play-ground/myFirstApp/messagesFiles)
上述输出采用build.sbt
中的上述设置
在以前版本的Play(以及SBT)中,project/Build.scala
中的以下内容可以实现此目的:
unmanagedResourceDirectories in Compile <+= baseDirectory(_ / ".." / "messagesFiles" )
UnmanagedResourceDirectory在Compile中我使用的是Play 2.1.0版本。如果我在Build.scala中的Compile+=baseDirectory.value/“messagesFiles”中包含这一行UnmanagedResourceDirectory,我会收到错误,因为“value value不是sbt.SettingKey[java.io.File]的成员”。我无法找到它“unmanagedResourceDirectories”键在此输入您可以编辑我的答案或使用解决方案对其进行注释,以便我添加对您有效的内容吗?我必须在build.scala的设置方法中添加以下行:编译中的unmanagedResourceDirectories谢谢!我添加了对您有效的内容,以便您可以批准我的答案作为解决方案。