我有一个JSP的Servlet项目,对此我做了一个i18n
。
我的resources.properties
文件位于src/main/resources/
中,并且都可以在我的PC上运行(Windows 10)。
我将更新提交给git,我的朋友拿来了它,但是它没有用。似乎找不到资源束。他具有捆绑变量名称而不是值。
在JSP中,我这样做:
在顶部<fmt:setBundle basename="resources"/>
(资源是捆绑包名称)中,
并将每个值替换为<fmt:message key="leftbar.librarian"/>
当我想从JSP更改语言时,我做了:
<c:choose>
<c:when test="${cookie.get('language').value == 'ru'}">
<fmt:setLocale value='ru' scope="session"/>
</c:when>
<c:otherwise>
<fmt:setLocale value='en' scope="session"/>
</c:otherwise>
</c:choose>
<fmt:setBundle basename="resources"/>
并通过JS通过单击按钮设置cookie。这些都可以在我的PC上运行。在另外三台PC上,捆绑软件未加载(但没有错误)。
那么,我应该如何在Java中定义包,以便其他人可以得到它?
附言我没有使用Java代码对其进行配置。全部在JSP中。但是如果我错了,准备重构。
最佳答案
解决了。 Tomcat不在/ resources路径中找到资源。因此,我不得不将捆绑软件移至根目录。现在项目在所有PC上启动