2013-07-15 56 views
3

我开始使用旧版项目并尝试使用Maven构建它。我正在使用Eclipse EE和Tomcat v7.0。当我在终端中运行“mvn package”时,出现上述标题行中的错误。这个错误真的绊倒了我,因为在我的pom.xml文件中我有以下依赖Maven错误:程序包javax.servlet不存在

<dependency> 
<groupId>javax.servlet</groupId> 
<artifactId>jstl</artifactId> 
<version>1.2</version> 
</dependency> 

我还检查了属性>目标运行时,并确保Tomcat的V7.0时所选择的运行时间。我相当肯定这是我的eclipse环境中的一个问题,并且希望对如何解决这个问题提出一些建议。

编辑:这里有一些额外的信息。我运行后的第一个输出“MVN套装”是

Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:2.3.2:compile (default-compile) on project myProject: Compilation failure: Compilation failure: 

其次是另一个奇怪的错误,我忘了原来张贴到包括。我说这是奇怪,因为,像包的javax.servlet,org.apache.catalina也应包含在Tomcat中

[ERROR] /path/to/Main.java:[7,26] error: package org.apache.catalina does not exist 

另外,我觉得我是混合了传统项目的意义,因为这不是一个旧项目。这只是一个已经完成了很多工作的项目,我现在正在帮助原始创作者。

回答

4

您缺少的依赖关系可能是Servlet API

<dependency> 
    <groupId>javax.servlet</groupId> 
    <artifactId>servlet-api</artifactId> 
    <version>2.5</version> 
    <scope>provided</scope> 
</dependency> 

务必导入正确版本的API。对于传统项目,这可能是比2.5更早的版本。

正如mentionned由格热戈日,你也应该使用范围提供因为Servlet API的应该由你的应用程序服务器(例如Tomcat)的提供。

0

将服务器运行时添加到您的项目中。 示例 - 为Tomcat

1 - 右键点击你的项目

2 - 选择构建路径

3-转到Libraries选项卡

4-添加库

5-选择服务器运行时间

6-在这里你应该得到Apache Tomcat

enter image description here

如果你没有得到的Apache Tomcat在这里,你需要你的项目Facet服务器添加如下 -

1右键点击您的项目

2 - 选择项目Facet

3-如果你没有得到选项点击链接“转换为刻面的形式”

4-转到Runtime选项卡,在右侧选择你的运行上

enter image description here

相关问题