You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Cargo-tracker项目依赖与插件解析失败及编译报错求助

解决Cargo-tracker项目的依赖解析与编译错误问题

咱们一步步来搞定你遇到的这两个问题:依赖/插件无法解析,以及org.eclipse.persistence.annotations包不存在的编译错误。

一、先解决依赖与插件无法解析的问题

1. 修复PrimeFaces仓库地址

你pom.xml里配置的PrimeFaces仓库是HTTP协议,现在很多Maven仓库已经不再支持HTTP访问,容易导致依赖拉取失败。把仓库地址改成HTTPS:

<repositories>
    <repository>
        <id>primefaces</id>
        <url>https://repository.primefaces.org</url> <!-- 将http替换为https -->
    </repository>
</repositories>

2. 强制更新Maven依赖并清理缓存

在IntelliJ的Terminal里运行以下命令,强制刷新依赖并清理本地缓存:

mvn clean install -U

也可以手动点击IntelliJ右侧Maven面板里的「Reload All Maven Projects」按钮,触发依赖重新拉取。

3. 检查IntelliJ的Maven配置

确保IntelliJ使用的是正确的Maven设置:

  • 打开File > Settings > Build, Execution, Deployment > Build Tools > Maven
  • 确认「Maven home directory」指向你本地安装的Maven路径,「User settings file」关联正确的settings.xml(如果配置了国内镜像,能大幅提升依赖拉取速度)

二、解决org.eclipse.persistence.annotations不存在的编译错误

这个包是EclipseLink的扩展注解,不属于标准Java EE API范畴,所以需要在pom.xml中显式添加EclipseLink依赖。由于GlassFish 4.1.1本身自带EclipseLink 2.6.4版本,我们使用provided scope避免版本冲突:
在pom.xml的<dependencies>节点中添加:

<dependency>
    <groupId>org.eclipse.persistence</groupId>
    <artifactId>eclipselink</artifactId>
    <version>2.6.4</version> <!-- 与GlassFish 4.1.1兼容的版本 -->
    <scope>provided</scope>
</dependency>

添加完成后,重新运行mvn clean compile,编译错误应该就能解决了。

三、额外检查项

  1. JDK版本一致性:确保IntelliJ中项目的SDK配置为Java 7(pom.xml里指定了sourcetarget都是1.7),同时GlassFish服务器配置的JDK也是Java 7。
  2. GlassFish服务器配置:确认IntelliJ中GlassFish服务器的安装路径正确,服务器已启动成功,部署时选择Maven构建生成的cargo-tracker.war文件。

按照以上步骤操作后,项目的构建和依赖问题应该就能全部解决啦。

内容的提问来源于stack exchange,提问作者Harisudha

火山引擎 最新活动