Java 部署到JBOSS后忽略Jackson注释

Java 部署到JBOSS后忽略Jackson注释,java,maven,jboss,jackson,Java,Maven,Jboss,Jackson,我有一个使用两个Jackson注释的类: @JsonIgnoreProperties(ignoreUnknown = true) public class MyObject{ @JsonProperty(value = "fooVal") private String foo; public MyObject(){} public String getFoo() { return foo; } public

我有一个使用两个Jackson注释的类:

@JsonIgnoreProperties(ignoreUnknown = true)
public class MyObject{

    @JsonProperty(value = "fooVal")
    private String foo;

    public MyObject(){}        

    public String getFoo() {
        return foo;
    }

    public void setFoo(String foo) {
        this.foo = foo;
    }
}
当我在测试用例中使用
ObjectMapper
将接收到的JSON映射到本地环境中的
MyObject
时,它可以正常工作,但是如果我将模块部署到JBOSS,因为所有注释都被忽略了,我不知道为什么

My
pom.xml
具有依赖性:

<dependency>
    <groupId>org.codehaus.jackson</groupId>
    <artifactId>jackson-mapper-asl</artifactId>
</dependency>

org.codehaus.jackson
杰克逊地图绘制者
因此,库将导入到部署中的WAR文件夹中


为什么在部署后会忽略注释?

问题是由于自动导入旧版本的Jackson而导致库冲突。 解决办法包括:

<exclusions>
        <module name="org.codehaus.jackson.jackson-core-asl" />
        <module name="org.codehaus.jackson.jackson-mapper-asl" />
</exclusions>

进入部署标记中的
jboss部署结构.xml

其他开发人员的重要提示:
使用新库时,请考虑应用程序服务器的firstclass/lastclass(类加载顺序首选项)设置:,

问题在于自动导入旧版本的Jackson导致库冲突。 解决办法包括:

<exclusions>
        <module name="org.codehaus.jackson.jackson-core-asl" />
        <module name="org.codehaus.jackson.jackson-mapper-asl" />
</exclusions>

进入部署标记中的
jboss部署结构.xml

其他开发人员的重要提示:
在使用新库时,请考虑应用程序服务器的firstclass/lastclass(类加载顺序首选项)设置:,

库可能会冲突-如果您使用的是JBoss 7,它已经有了(旧版本的)Jackson作为RestEasy的一部分。@Gimby我曾尝试在没有libs的情况下重新部署战争,但行为没有改变,很不幸。@Gimbly实际上我不得不在jboss部署结构中排除它。。非常感谢你给我指明了正确的方向!库冲突可能-如果您使用JBoss 7,它已经有(旧版本的)Jackson作为RestEasy的一部分。@Gimby我尝试在没有libs的情况下重新部署war,但行为没有改变,很遗憾。@Gimbly实际上我不得不在JBoss部署结构中排除它。。非常感谢你给我指明了正确的方向!