Java编译器用maven打war包出错解决办法
作者:雪心玉竹 发布时间:2022-01-18 06:13:29
在用maven打包时,出现过如下两个错误:
错误1:程序包javax.servlet不存在,程序包javax.servlet.http不存在
错误2:No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK? Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile)。。。
一、错误1 出现原因:java编译器没有找到软件包javax.servlet。
解决方法:在pom.xml中添加以下依赖包
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.0.1</version>
<scope>provided</scope>
</dependency>
待依赖下载完成后,右键——>maven——>Update Projects…
有时候jsp页面也会报错误,也是相关javax.servlet.http 找不到,一种方法是采用上述方法,在pom中添加依赖;
第二种方法如下:
在项目上右键——>Build Path——>Configure Build Path,然后如图:
依次Next就可以了。
二、错误二
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------[ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?[INFO] 1 error[INFO] -------------------------------------------------------------[INFO] ------------------------------------------------------------------------[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------[INFO] Total time: 3.764 s[INFO] Finished at: 2018-03-19T15:14:00+08:00[INFO] Final Memory: 11M/110M
[INFO] ------------------------------------------------------------------------[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project book-donation: Compilation failure
[ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
1.错误原因:eclipse默认选择jre运行程序,而maven的install要求使用jdk,因此报编译环境找不到的错误。
2.解决方法:将jre改为jdk
3.详细步骤:项目右键——>Build Path——>Configure Build Path…,打开窗口后,按照如下图步骤进行选择,此步骤是将jre换为jdk ,将jre换为jdk
步骤完成后,先更新一下maven项目(右键——>maven——>Update Projects…),再clean以下项目(右键——>Run As…
——>Maven Clean),最后再打包(右键——>Run As…——>Maven install)。
来源:http://blog.csdn.net/rongxiang111/article/details/79612491


猜你喜欢
- 把idea中的项目导入github仓库中步骤详解做完项目进行云端保存是很必要的,我都是存放在github中。所以废活少说直接开始啦。前提是已
- 大家在登录网站的时候,大部分时候是通过一个表单提交登录信息。但是有时候浏览器会弹出一个登录验证的对话框,如下图,这就是使用HTTP基本认证。
- 本文实例完成人机猜拳互动游戏的开发,供大家参考,具体内容如下阶段一:实验——分析业务,创建用户类1.分析业务,抽象出类、类的特征和行为2.创
- 因为mybatis好使,所以几乎需要操作数据库的时候,我都会使用mybatis,而且在一个正式的项目中,同时存在BS和CS的程序,都使用的M
- Java中,for-each循环简化了任何Collection或array的遍历过程,但并不是每个Java程序员都了解本文将要描述的for-
- mybatis-plus Condition拼接Sql语句各方法1.setSqlSelect—用于添加查询的列信息public Wrappe
- 一、错误处理原理分析使用SpringBoot创建的web项目中,当我们请求的页面不存在(http状态码为404),或者器发生异常(http状
- 我们都知道EditText与TextView是Android的文本输入框和文本显示框,但是基于手机屏幕的大小因素,如果在需要输入较多文字或者
- springboot项目还是ssm等java常用框架都会有这样的问题,解决办法通用问题场景前端发送Post请求,前端返回400 Bad Re
- 本文是基于springboot完成测试测试代码地址如下:https://github.com/Dr-Water/springboot-act
- 1.循环遍历private void GetControls(Control fatherControl){ Co
- 需求是需要在TextView前端加入一个标签展示。最终效果图如下:根据效果图,很容易就能想到使用SpannableStringBuilder
- android线程消息机制主要由Handler,Looper,Message和MessageQuene四个部分组成。平常在开发中,我们常用来
- 本文实例讲述了C#中datagridview的EditingControlShowing事件用法。分享给大家供大家参考。具体实现方法如下:u
- 写完js倒计时,突然想用java实现倒计时,写了三种实现方式一:设置时长的倒计时;二:设置时间戳的倒计时;三:使用java.util.Tim
- 1.为项目添加POIPOI官网链接点进去之后下载(上边的是编译好的类,下边的是源代码) 解压文件夹,把下面三个文件复制到WebCo
- 命令模式定义:将请求封装成对象,这可以让你使用不同的请求、队列、或者日志来参数化其他对象。何时使用命令模式?当需要将发出请求的对象和执行请求
- 第一步:配置管理器中新建解决方案配置第二步:定义条件编译符号:第三步:在代码中使用自定义的条件编译#if CustomDebugConsol
- Spark_SQL的UDF使用用户自定义函数,也叫UDF,可以让我们使用Python/Java/Scala注册自定义函数,并在SQL中调用。
- foreach拼接字符串查询无数据返回Mybatis-plus xml使用foreach遍历查询条件,填充IN函数时,查询不到数据入参 Li