javax.servlet.jsp:jsp-api:2.1和org.mortbay.jetty:jsp-api-2.1:6.1.5之间有什么区别?

时间:2012-08-13 14:53:25

标签: jetty

我正在为使用Jetty的产品清理构建系统。目前该项目已

javax.servlet.jsp:jsp-api:2.1

作为依赖。鉴于我正在使用Jetty进行我的项目,我怀疑使用

org.mortbay.jetty:jsp-api-2.1:6.1.5

将是更好的选择。我是对还是错?它们可以互换使用吗? jsp-api-2.1是否利用了不同的实现?或者只是jsp-api断言与Jetty兼容的重新打包?

我一直试图在网上找到有关此内容的信息,到目前为止还没有出现过。

更新:似乎org.mortbay.jetty:servlet-api-2.5:6.1.5javax.servlet.jsp:servlet-api:2.1具有相同的关系。

1 个答案:

答案 0 :(得分:3)

Jetty与jsp有着悠久而丰富多彩的历史,没有我们自己的jsp实现,我们经常利用其他实现,根据版本号判断你看那些非常旧的版本,我们在glassfish上维护补丁jsp实现。我认为这是一个补丁,用于支持在码头登录,然后修复错误或三个。

现在有一天我们一直在使用java.net项目中的jsp工件,这些工件一段时间后从glassfish中分离出来。然而,这似乎并不是经常跟踪错误修复,所以我们正在尝试在tomcat中尝试jasper实现。

回到你的问题,jsp-api工件通常只是重新打包的工件,因为api不会频繁更改。我们历史上将它们重新捆绑,以使它们与修补后的实现配对。

现在,您显然正在使用jetty-6设置,因为您仍在使用org.mortbay包装,但jetty6和jetty7都是servlet-api 2.5,因此您可以使用jetty7 jsp设置,我们有一个在这里声明这些工件的方便的pom:

http://central.maven.org/maven2/org/eclipse/jetty/jetty-jsp/7.6.5.v20120716/jetty-jsp-7.6.5.v20120716.pom

这些也是玻璃鱼束,在这个过程中重新包装并制成osgi捆绑,因此它们可以在osgi环境中与jetty一起使用....它们应该正常工作,我们将它们打包在我们的jetty7发行版中。