【问题标题】:"Cannot resolve symbol" when trying to import classes from a jar deployed in my custom maven nexus repo尝试从部署在我的自定义 maven nexus 存储库中的 jar 导入类时出现“无法解析符号”
【发布时间】:2020-06-22 14:08:07
【问题描述】:

这不是我第一次从我的自定义 maven nexus 存储库中读取已部署的 jar(我的 setting.xml 是正确编写的),但不幸的是,这一次我无法从新部署的 spring-boot jar 导入类,虽然它确实存在于项目类路径中。

Cannot resolve symbol 'test'

ps:我pom.xml中的jar码sn-p如下

       <project> 
     ...
        <dependency>
                <groupId>cc.test</groupId>
                <artifactId>jar-name</artifactId>
                <version>0.1.4</version>
            </dependency> 
    ....
 </project>

【问题讨论】:

  • 你启动maven更新了吗? jar 的 pom 是否具有相同的名称(groupId、artifactId、version)?在您的 IDE 中,该 jar 是否已加载到类路径中?
  • @WoAiNii 终于找到解决办法了,看看下面我的回答吧!

标签: java spring-boot maven repository nexus


【解决方案1】:

快速更新:

在尝试了几乎所有方法之后,我找到了解决方案! 很快,Spring Boot 应用程序不打算用作依赖项,因此添加以下配置将生成两个单独的 jar,您的应用程序的可执行 fat jar 将使用 exec 分类器发布。可以用作依赖项的普通 jar 将是未分类的。这个未分类的 jar 将部署在您的 maven nexus repo 中,并在另一个 spring-boot 项目中用作 maven 依赖项

<build>
<plugins>
    <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
        <configuration>
            <classifier>exec</classifier>
        </configuration>
    </plugin>
</plugins>

我的回复基于spring-boot官方文档:

https://docs.spring.io/spring-boot/docs/2.1.1.RELEASE/reference/htmlsingle/#howto-create-an-additional-executable-jar

【讨论】:

    猜你喜欢
    • 2019-05-31
    • 2019-02-08
    • 1970-01-01
    • 1970-01-01
    • 2014-06-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多