Thorntail 2.6.0.Final版本WildFly依赖缺失错误求助
我之前处理过类似的Thorntail版本升级依赖问题,针对你遇到的org.codehaus.jackson:jackson-jaxrs:jar:1.9.13.redhat-00006找不到的错误,给你几个可行的解决方案:
1. 替换为标准Jackson版本
Redhat定制的1.9.13.redhat-00006版本可能在公共仓库已不再提供,你可以在pom.xml中显式声明标准的Jackson-JAXRS版本,覆盖Thorntail的依赖管理:
<dependency> <groupId>org.codehaus.jackson</groupId> <artifactId>jackson-jaxrs</artifactId> <version>1.9.13</version> </dependency>
添加后执行mvn clean install,Maven会从Maven Central拉取标准版本,避免依赖定制版本。
2. 添加Redhat专属仓库
Redhat的定制依赖通常托管在他们的官方GA仓库,你需要在pom.xml中添加这个仓库配置:
<repositories> <repository> <id>redhat-ga</id> <url>https://maven.repository.redhat.com/ga/</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>false</enabled> </snapshots> </repository> </repositories>
然后强制更新依赖缓存:
mvn clean install -U
这个命令会让Maven忽略本地缓存,重新从新配置的仓库拉取依赖。
3. 使用Thorntail内置的Jackson扩展
Thorntail本身提供了集成的Jackson支持扩展,不需要单独引入jackson-jaxrs依赖。移除你项目中原来的Jackson相关依赖,添加以下扩展:
<dependency> <groupId>io.thorntail</groupId> <artifactId>jackson</artifactId> </dependency>
这个扩展会自动适配当前Thorntail版本的Jackson依赖,避免版本不匹配或找不到的问题。
4. 清理本地Maven缓存
如果本地Maven仓库已经缓存了“找不到依赖”的记录,即使修复仓库配置也可能无法重新拉取。你可以手动删除本地仓库中对应的目录:
找到你的Maven本地仓库路径(默认是~/.m2/repository/org/codehaus/jackson/jackson-jaxrs/1.9.13.redhat-00006),删除该目录后,再执行mvn clean install -U重新拉取。
问题原因说明
Thorntail 2.6.0.Final相比2.5.0.Final调整了依赖版本,引用了Redhat定制的Jackson版本,但这个版本仅存在于Redhat专属仓库,而你的Maven配置中未包含该仓库,或者JBoss公共仓库已经移除了这个旧的定制版本,导致依赖查找失败。
内容的提问来源于stack exchange,提问作者Henrique Martins

