在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")
)
messagesFiles
文件夹包含messages
和messages.fr
个文件。
在应用程序启动时,未显示已翻译的文本。为什么呢?
如何设置播放应用程序以读取除conf
文件夹以外的自定义位置中的消息文件?
答案 0 :(得分:1)
您尚未描述有关播放版本的环境,因此我假设您使用的是最新版本Play 2.2.2-RC1
。我的是......
[myFirstApp] $ show playVersion
[info] 2.2.2-RC1
鉴于播放版本,您可以在大多数情况下使用build.sbt
配置项目。如果您的项目中没有它,请创建一个。
将以下行添加到build.sbt
以指向特定于语言的消息文件所在的自定义目录。
unmanagedResourceDirectories in Compile += baseDirectory.value / "messagesFiles"
我不确定它是否是最推荐的指定消息目录的方法,但考虑到sbt如何工作,它可以解决问题。
您可以show
unmanagedResourceDirectories
设置的值,如下所示:
[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" )