eclipse运行正常但是maven编译报错

超级呆子 发布于 2016/09/21 12:42
阅读 1K+
收藏 0


mvn 3.3.9

eclipse neon

jdk 1.8

项目在eclipse里面编译运行都没问题,但是单独用maven打包就报错了,eclipse关联的是外部的maven也就是我编译出错的那个maven

maven编译错误如下

[ERROR] D:\code\git\mytest\src\main\java\com\test\dto\Contact.java:[5,1] 错
误: 找不到符号
[ERROR]   符号: 类 JsonIgnoreProperties
D:\code\git\mytest\src\main\java\com\test\dto\Link.java:[6,39] 错
误: 程序包com.fasterxml.jackson.annotation不存在
[ERROR] D:\code\git\mytest\src\main\java\com\test\dto\Link.java:[
8,1] 错误: 找不到符号
[ERROR]   符号: 类 JsonIgnoreProperties
D:\code\git\mytest\src\main\java\com\test\util\JerseyRegister.java:[3,35]
错误: 程序包org.glassfish.jersey.jackson不存在
[ERROR] D:\code\git\mytest\src\main\java\com\test\util\JerseyRegister.java:
[5,39] 错误: 程序包com.fasterxml.jackson.jaxrs.json不存在
[INFO] 18 errors

加载中
0
LarrySu
LarrySu
检查你的pom.xml是否有引用jackson
0
o0O0o0O0o
o0O0o0O0o
同楼上的意思,你看下你eclipse里面项目的依赖是否都体现在了pom.xml中呢
0
超级呆子
超级呆子

引用来自“LarrySu”的评论

检查你的pom.xml是否有引用jackson
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-core-lgpl</artifactId>
<version>1.3.0</version>
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-lgpl</artifactId>
<version>1.3.0</version>
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-xc</artifactId>
<version>1.3.0</version>
</dependency>


这个吗?都导入了,在eclipse环境中运行都正常,启动jetty-run也ok,但是在命令行下用maven编译就出错了
0
秦人秦韵
秦人秦韵
项目能做行吗?
0
不正常的物种
不正常的物种

你项目的编码和maven里面的编码不一致

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.5.1</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
这里改成你项目的编码看下

0
太黑_thj
太黑_thj
缺包,先clean 下工程,然后重新build一下,最后update project一下
0
漓江
漓江

建议

1)你可以去target下生成的jar文件,对应里面是否有com.fasterxml.jackson.annotation?

2)如果是依赖的jar以lib文件夹的形式保存的话,确认你运行的classpath中是否已经导入?


0
阿信sxq
阿信sxq
maven配置是否正确,这很重要
0
fz00x0zf
fz00x0zf
clean package -Dmaven.test.skip=true
0
超级呆子
超级呆子

貌似是少了一个包,导入进去就好了,

<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.4.5</version>
</dependency>

但奇怪的是在eclipse中没有报错

LarrySu
LarrySu
有可能eclipse项目设置了依赖jackson,所以没问题.而maven必需要在pom.xml里配置才能下载并引用本地仓库的jar.
返回顶部
顶部