Properties Liferay portlet添加属性时包含翻译,无需重新部署

Properties Liferay portlet添加属性时包含翻译,无需重新部署,properties,liferay,portlet,translate,Properties,Liferay,Portlet,Translate,我想创建并保存文件语言。\u mylang.properties包含我的在线翻译。但当我这样做时,Liferay没有看到更改,而是使用默认的language.properties文件。只有在重新启动Liferay(重新部署我的portlet)后,问题才会消失。有人知道如何添加自己的属性文件并实现Liferay查看,而无需重新部署吗 关于如果您坚持使用属性文件,则重新部署是app server的一项功能:未经重新部署,它不会拾取您正在运行的系统中更改的文件的任何更改。JSP是一个值得注意的区别,但

我想创建并保存文件语言。\u mylang.properties包含我的在线翻译。但当我这样做时,Liferay没有看到更改,而是使用默认的language.properties文件。只有在重新启动Liferay(重新部署我的portlet)后,问题才会消失。有人知道如何添加自己的属性文件并实现Liferay查看,而无需重新部署吗


关于

如果您坚持使用属性文件,则重新部署是app server的一项功能:未经重新部署,它不会拾取您正在运行的系统中更改的文件的任何更改。JSP是一个值得注意的区别,但是您不应该依赖这个特性在生产系统中可用:它是一个开发时特性

也就是说,如果您想动态更新Liferay的翻译,您可以查看部署过程,或者尝试访问
com.Liferay.portal.language.LanguageResources
,尽管插件无法使用此类。您可以尝试使用classloading magic访问它(请参见
com.liferay.portal.kernel.util.PortalClassInvoker
),但要为难看的代码(例如,它的反射)做好准备,以便动态更新翻译


我相信还有其他的可能性(甚至可能更好),但这是我发现的第一个功能。

为什么此功能是开发时功能?我认为门户管理员每年翻译一次或两次,我们也可以称之为“开发”。内容在运行时在线翻译,而程序/产品/用户界面在开发/部署时翻译。优点是,产品可以产品的所有用户都可以轻松地共享这些信息。