Ale*_* Ya 6 java jsp jstl java-ee maven
我想使用SDK Java EE 7,Glassfish 4和Maven.
这是对的吗?请注意范围.
1.对于servlet:
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-api</artifactId>
<version>7.0</version>
<scope>provided</scope>
</dependency>
Run Code Online (Sandbox Code Playgroud)
2.没有标准标签且没有JSTL的JSP:
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jsp-api</artifactId>
<version>2.0</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)
3.对于带有标准标签的JSP"c:"
<dependency>
<groupId>taglibs</groupId>
<artifactId>standard</artifactId>
<version>1.1.2</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)
4.对于带有JSTL的JSP
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
<scope>runtime</scope>
</dependency>
Run Code Online (Sandbox Code Playgroud)
您知道此信息包含的规范吗?
有多种选择.正如问题中所建议的,一种方法是导入整个Java EE API.但你也可以更有选择性.您可以只包含servlet API(这适用于servlet API 3.0.1;更新版本可用于相同的工件数据,但旧版本使用工件ID servlet-api
代替):
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.0.1</version>
<scope>provided</scope>
</dependency>
Run Code Online (Sandbox Code Playgroud)
问题意味着JSTL包还引入了相关的JSP依赖关系; 情况并非如此:如果您需要使用JSP API,则需要依赖它(但值得注意的是,您不一定需要它,如本问题所述).您应该使用与您正在使用的Servlet API版本匹配的正确版本的JSP API,因此对于上面显示的servlet API 3.0.1,您应该使用2.2:
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.2</version>
<scope>provided</scope>
</dependency>
Run Code Online (Sandbox Code Playgroud)
与Servlet API一样,JSP API的依赖数据也发生了变化.在这种情况下,对于早于2.0的版本,组ID是正确的javax.servlet
,而对于低于2.2的版本,工件ID已更改为javax.servlet.jsp-api
.
对于JSTL,您几乎肯定会使用1.2版本.此版本的新标准位置为:
<dependency>
<groupId>javax.servlet.jsp.jstl</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)
虽然问题中显示的旧位置继续正常工作.据推测,如果将来对此库进行任何更新,它们将包含在此组/工件ID中,因为它似乎旨在适合所有其他最新工件.与其他工件不同,容器不提供JSTL,因此范围不应设置为"提供",而不是其他工件.
您不应该将这些依赖项添加到项目中.J2EE规范的实例化(例如servlet)应由应用程序服务器的运行时提供.
在Eclipse中,为应用程序服务器添加服务器运行时.右键单击项目,然后选择"属性".然后构建路径>添加库>服务器运行时.
归档时间: |
|
查看次数: |
23979 次 |
最近记录: |