No auto configuration classes found in META- INF/spring.factories

北慕城南 提交于 2020-02-27 02:01:23

我在用IDEA做实验时,发现一个问题:

在IDEA中调试一切都OK,当我通过IDEA做成可执行的jar时,在命令行运行时出现:java.lang.IllegalArgumentException: No auto configuration classes found in META-INF/spring.factories,根据网上所说,删除META-INF目录,project setting中 Artifacts-->Manifest File目录重新设置在src目录下,然后再用IDEA的右侧MAVEN-->Lifecycle-->package重新打包,发现downloading  surefire-junit-platform-2.22.2.pom BUILD FAILURE ,因为我的IDEA设置为readhat下载源,我d在IDEA中打开setting.xml(另外,IDEA中setting-->Building tools-->Maven的Use plugin registry也勾选了(${user.home}/.m2/plugin-registry.xml来管理plugin的版本,就设置为true )),然后我将setting.xml中的源设置为阿里。具体设置如下:

<profiles>
    <profile>
      <id>redhat-ga-repository</id>
      <repositories>
        <repository>
          <id>redhat-ga-repository</id>
          <name>Red Hat GA repository</name>
          <url>http://maven.repository.redhat.com/ga/</url>
          <releases>
            <enabled>true</enabled>
            <updatePolicy>daily</updatePolicy>
          </releases>
          <snapshots>
            <enabled>true</enabled>
            <updatePolicy>daily</updatePolicy>
          </snapshots>
        </repository>
      </repositories>
      <pluginRepositories>
        <pluginRepository>
          <id>redhat-ga-repository</id>
          <name>Red Hat GA repository</name>
          <url>http://maven.repository.redhat.com/ga/</url>
          <releases>
            <enabled>true</enabled>
            <updatePolicy>daily</updatePolicy>
          </releases>
          <snapshots>
            <enabled>true</enabled>
            <updatePolicy>daily</updatePolicy>
          </snapshots>
        </pluginRepository>
      </pluginRepositories>
    </profile>
      <profile>  
          <id>aliyun</id>阿里profile是我增加的
          <repositories>
              <repository>
                  <id>aliyun</id>
                  <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
                  <releases>
                      <enabled>true</enabled>
                  </releases>
                  <snapshots>
                      <enabled>true</enabled>
                  </snapshots>
              </repository>
          </repositories>
          <pluginRepositories>
              <pluginRepository>
                  <id>aliyun</id>
                  <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
                  <releases>
                      <enabled>true</enabled>
                  </releases>
                  <snapshots>
                      <enabled>true</enabled>
                  </snapshots>
              </pluginRepository>
          </pluginRepositories>
      </profile>
  </profiles>
  <activeProfiles>
    <activeProfile>aliyun</activeProfile> 原来激活的是redhat 
  </activeProfiles>

这样设置之后,采用IDEA-->MAVEN-->Lifecycle-->Install则成功生成****-0.0.1-SNAPSHOT.jar,然后在命令行上java -jar ****-0.0.1-SNAPSHOT.jar就正常执行了。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!