原创

Gradle build 时出现 Fatal Error 文档中根元素前面的标记必须格式正确

温馨提示:
本文最后更新于 2024年12月30日 ,已超过 110 天没有更新。若文章内的图片失效(无法正常加载),请留言反馈或直接联系我

在做cas开发的过程中,正在整合 cas-mongo-server,结果下载包之后,编译一直通不过,出现

[Fatal Error] cas-server-support-mongo.pom 6.3.0 文档中根元素前面的标记必须格式正确
一直找不到原因,后来看到Gradle的仓库里,这个pom文件居然是一个html脚本,当时惊了。想来想去,发现,应该是我使用了阿里的maven仓库代理,但是不知道什么原因,相关的文件可能是无法通过阿里云下载,服务器就给返回了html页面,结果被gradle下载下来当成pom了。

buildscript {
    repositories {
        maven { url "http://192.168.1.106:7888/nexus/content/groups/public"}
        maven { url 'https://maven.aliyun.com/repository/public/' }
        maven { url 'https://maven.aliyun.com/repository/spring/'}
        maven { url 'https://maven.aliyun.com/repository/gradle-plugin'}
        maven { url 'https://maven.aliyun.com/repository/spring/'}

        mavenLocal()
        gradlePluginPortal()
        mavenCentral()
        jcenter()
        maven {
            url "https://plugins.gradle.org/m2/" 
            mavenContent { releasesOnly() }
        }
    }
    dependencies {
        classpath "de.undercouch:gradle-download-task:${project.gradleDownloadTaskVersion}"
        classpath "org.springframework.boot:spring-boot-gradle-plugin:${project.springBootVersion}"
        classpath "gradle.plugin.com.google.cloud.tools:jib-gradle-plugin:${project.jibVersion}"
        classpath "io.freefair.gradle:maven-plugin:${project.gradleMavenPluginVersion}"
        classpath "io.freefair.gradle:lombok-plugin:${project.gradleLombokPluginVersion}"
    }
}

发现了真相的我简直不敢相信自己的眼睛。

然后去掉阿里云代理,(保留gradle-plugin,不然gradle插件根本下不来),删除相关的包之后,重新下载,马上就顺利编译了。

这个问题太少见了,网上根本没有解决办法,分享给遇到同样问题的朋友。

buildscript {
    repositories {
//        maven { url "http://192.168.1.106:7888/nexus/content/groups/public"}
//        maven { url 'https://maven.aliyun.com/repository/public/' }
//        maven { url 'https://maven.aliyun.com/repository/spring/'}
        maven { url 'https://maven.aliyun.com/repository/gradle-plugin'}
//        maven { url 'https://maven.aliyun.com/repository/spring/'}

        mavenLocal()
        gradlePluginPortal()
        mavenCentral()
        jcenter()
        maven {
            url "https://plugins.gradle.org/m2/" 
            mavenContent { releasesOnly() }
        }
    }
    dependencies {
        classpath "de.undercouch:gradle-download-task:${project.gradleDownloadTaskVersion}"
        classpath "org.springframework.boot:spring-boot-gradle-plugin:${project.springBootVersion}"
        classpath "gradle.plugin.com.google.cloud.tools:jib-gradle-plugin:${project.jibVersion}"
        classpath "io.freefair.gradle:maven-plugin:${project.gradleMavenPluginVersion}"
        classpath "io.freefair.gradle:lombok-plugin:${project.gradleLombokPluginVersion}"
    }
}

内容转自网址 https://www.codeleading.com/article/49815151248/#google_vignette ,留作分享用

正文到此结束
本文目录