我使用的是java 6 SE,但是现在,当我使用wsdl2java时,它在EE版本中使用javax.xml.ws.Service生成类,所以我已经下载并安装了java 6 EE,但我不确定应该在我的portlet项目中哪里将java版本从SE更改为EE。
我安装了一些tomcats和glassfishes服务器,其中包括从oracle网站下载的“java ee sdk”包(http://www.oracle.com/technetwork/java/javaee/downloads/java-ee-sdk-6u3-downloads-439814.html)。我仍然不知道在哪里可以找到使用 EE api 而不是 SE api 的 jre。我用谷歌搜索应该有目录 glassfish3/jdk,但没有这样的东西。
我只能找到 java 6 和 7 SE 的 JRE。
最佳答案
终于知道怎么做了。首先,您需要下载打包为 jar 的 java EE API(空签名,没有方法代码体)。可以从 Maven 中央存储库下载。
http://search.maven.org/ + javaee.api 给出 http://search.maven.org/remotecontent?filepath=javax/javaee-api/6.0/javaee-api-6.0.jar 的结果(我使用的是 jre 6)。
现在我将该 jar 放入我的 portlet 项目中。在 eclipse 中它:
project settings -> Java Build Path -> Libraries -> Add External JARs...
然后,当 java ee api jar 位于项目内部之后,您必须将其移至 SE JRE 之上:
project settings -> Java Build Path -> Order and Export
就是这样。您可以使用 EE API,不会出现任何错误。请记住,这个 jar 只提供空 API。此类应用程序必须部署到 java EE 驱动的服务器,很可能您希望将其部署到 glassfish(tomcat 默认使用 SE,而不是 EE,但是您可以设置 tomcat 使用 EE)。
如果你像我一样需要 tomcat + EE(因为 liferay IDE 不能很好地与 glassfish 配合使用),请查看该项目 http://tomee.apache.org/downloads.html
注意:我还没有使用过它,所以我无法确认它是否可以与 liferay 和 liferay IDE 一起正常工作。
关于java - 如何为liferay ide设置java EE版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14521617/