【发布时间】:2010-11-01 04:55:47
【问题描述】:
在java文件中导入javax.servlet包时,eclipse会找到这个包。但是,在运行 Ant 构建时,我收到错误“包 javax.servlet 不存在”。我猜这是一个构建路径问题,但我不知道如何解决它。我已经刷新并清理了项目,更改了构建路径的顺序并验证了包在预期的 .jar 文件中,但错误不会消失。有什么想法吗?
【问题讨论】:
在java文件中导入javax.servlet包时,eclipse会找到这个包。但是,在运行 Ant 构建时,我收到错误“包 javax.servlet 不存在”。我猜这是一个构建路径问题,但我不知道如何解决它。我已经刷新并清理了项目,更改了构建路径的顺序并验证了包在预期的 .jar 文件中,但错误不会消失。有什么想法吗?
【问题讨论】:
在 Eclipse 中,编译是使用服务器运行时 jar 获取这些定义。
在 Ant 中你需要添加相应的 jar 文件。
例如,您可以使用 Apache Tomcat 的 lib 目录中的 servlet-api.jar。这并不意味着您只能针对 tomcat 进行部署,您应该能够针对任何实现相同版本的 Servlet API 的应用程序服务器进行部署。
【讨论】:
可能值得从编译目标中打印出类路径,这将更容易确定是否存在任何类路径问题。
您可以使用 this technique 在 ant 目标中打印类路径。
【讨论】: