programing

Maven 및 Spring Boot - 해결할 수 없는 부모 POM - repo.spring.io (알 수 없는 호스트)

showcode 2023. 3. 21. 22:43
반응형

Maven 및 Spring Boot - 해결할 수 없는 부모 POM - repo.spring.io (알 수 없는 호스트)

프로젝트를 구축하려고 하는데 다음과 같은 결과가 나옵니다.

확인할 수 없는 부모 POM: 아티팩트 org.springframework를 전송할 수 없습니다.boot : spring - boot - starter - parent : pom : 1 . 3 . 0 . M3 from / to spring - to spring - path ( http://repo.spring.io/snapshot) ) @ pom pom pomPOM @ line 16, 컬럼 10 : Unknown host repo.spring.io -> [ Help 2 ]

pom.xml의 부모를 지정하는 방법은 다음과 같습니다.

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.3.0.M3</version>
    <relativePath></relativePath>
</parent>

는 비어 있기 때문에 리모트저장소에서 부모를 강제로 검색합니다.다만, repo.spring.io 는 불명확한 호스트라고 표시됩니다.

pom.xml 내의 저장소를 정의하는 방법은 다음과 같습니다.

<repositories>
    <repository>
        <id>spring-snapshots</id>
        <url>http://repo.spring.io/snapshot</url>
        <snapshots>
            <enabled>true</enabled>
        </snapshots>
    </repository>
    <repository>
        <id>spring-milestones</id>
        <url>http://repo.spring.io/milestone</url>
    </repository>
</repositories>

<pluginRepositories>
    <pluginRepository>
        <id>spring-snapshots</id>
        <url>http://repo.spring.io/snapshot</url>
    </pluginRepository>
    <pluginRepository>
        <id>spring-milestones</id>
        <url>http://repo.spring.io/milestone</url>
    </pluginRepository>
</pluginRepositories>

좋은 생각 있어요?

분명히 인터넷 접속에 문제가 있는 것 같습니다.브라우저에서 http://repo.spring.io에 접속할 수 있는지 확인합니다.[네(Yes)]의 경우는, 프록시 서버를 설정할 필요가 있는지를 체크합니다.그렇지 않은 경우 인터넷 공급자에게 문의하십시오.

다음 매뉴얼은 Maven 프록시 서버를 설정하는 방법에 대해 설명합니다.https://maven.apache.org/guides/mini/guide-proxies.html

이 질문에 부딪히는 사람은, 같은 문제에 대한 해결책을 투고합니다(다른 에러 메세지는,uknown host부분)을 클릭합니다.

2020년 1월 15일부터 maven central은 HTTPS를 위해 HTTP를 지원하지 않습니다.따라서 봄 저장소도 HTTPS로 전환되었습니다.

따라서 해결책은 URL을 변경하는 것입니다.http://repo.spring.io/milestone로.https://repo.spring.io/milestone.

이 문제는 당신의 프로젝트에서 메이븐 빌드를 완료할 수 없다는 것입니다.다음 절차를 수행합니다.

  1. 응용 프로그램 및 RunAs maven install을 마우스 오른쪽 버튼으로 클릭합니다.
  2. 저장소에 온라인으로 접속하는 동안 오류가 발생하면 .m2 디렉토리 아래의 settings.xml에 있는 프록시를 지정해 보십시오.메이븐 빌드의 프록시를 설정하려면 이 링크를 선택합니다.
  3. 완료되면 [프로젝트 우클릭], [메이븐]-> [메이븐 프로젝트 갱신]를 선택하여 [스냅샷/릴리스 강제 갱신]체크박스를 켜겠습니다

그러면 maven 빌드가 갱신되고 pom.xml에서 오류가 확실히 제거됩니다.

프로젝트 ->매븐 ->프로젝트 갱신 ->오프라인으로 예상되는 모든 체크박스를 켜면 오류가 바로 해결됩니다.

프로젝트의 Rigth 버튼 -> Maven -> 업데이트

제 경우 pom.xml(java 1.8)의 자바 버전과 환경변수 JAVA_가 일치하지 않는 것이 문제였습니다.HOME/JDK_HOME(자바 1.7).환경변수를 가리킨 후 JAVA_HOME 및 JDK_HOME에서 Java 1.8로 문제가 해결되었습니다.

만약 위의 모든 것이 효과가 없다면, 이것을 시도해 보세요.IntelliJ 를 사용하고 있는 경우.아래 설정을 확인합니다.

아마도요.~/.m2/settings.xml인터넷 접속이 제한되어 있습니다.

★★★★★★★★★를 사용하고 있는 경우는docker-machine(Windows 또는 OSX 도킹).

현재 도커머신은 와이파이 네트워크나 와이파이, 케이블로 전환하면 인터넷 연결이 끊기는 버그가 있습니다.

도커 머신을 재기동하고 있는 것을 확인합니다.

「」,docker-machine restart default

주의사항:아이디어로 작업하고 수입해 봤는데, 같은 문제에 부딪혔어요.솔루션을 다 시도해봤지만 효과가 없었어요.결국 루트 액세스 때문이란 걸 알았어요관리자 권한으로 아이디어를 냈는데 모든 게 잘 풀리네요.저처럼 바보 같은 짓은 하지 말아주세요.

나한텐 효과가 있었어![Maven] 탭으로 이동하여 [install]을 클릭합니다.종료 후 의존관계 해결을 다시 시도합니다.여기에 이미지 설명 입력

도커 서비스를 사용하고 있으며 다른 네트워크로 전환한 경우.도커 서비스를 다시 시작해야 합니다.

서비스 도커 재시작

이것으로 도커에서의 문제가 해결되었습니다.

pom.xml > maven > update maven project > snapshots/Releases 강제 업데이트를 체크합니다.

"Non-Resolvable parent POM: Could not transfer attribute etc."라는 오류가 발생한 후 프록시 서버를 설정해야 한다는 것을 알게 되었습니다.

다만, 재기동등에서도, 다음의 에러가 해소된 것은, mvn 의존관계:purge-local-repository 뿐입니다.

이는 의존관계 재해결과 관련이 있을 것으로 추측됩니다.로컬 리포지토리 종속성 제거에 대한 Apache 문서

나도 같은 문제에 직면해 있었다.그 이유는 인터넷 접속이었다.ISP를 바꾸자 해결되었습니다.

버전 다운그레이드

<parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version><change this version></version>
        <relativePath /> <!-- lookup parent from repository -->
    </parent>

빌드 2.1.6 버전을 빌드하고 원래대로 되돌립니다.1.3.3으로 릴리즈합니다.릴리스 빌드 실행 취소 1.3에서 2.1.6 빌드(내 경우 문제 해결)도움이 됐어요.

이미 언급했듯이 인터넷 문제나 프록시 설정일 수 있습니다.
저는 같은 문제를 찾다가 이 질문을 발견했습니다.제 경우 프록시 설정입니다.
모든 링크에서 사용자 이름과 패스워드를 표시하는 설정이 제시되어 사용할 수 없기 때문에 여기에 게시된 답변으로는 문제가 해결되지 않았습니다.
그렇지 않은 것에 대해 검색하다가 settings.xml에 대한 설정을 발견했습니다.몇 가지 변경이 필요했습니다.최종 코드는 다음과 같습니다.

<profiles>
    <profile>
       <id>MavenRepository</id>
           <repositories>
            <repository>
                <id>central</id>
                <url>https://repo1.maven.org/maven2</url>
                <snapshots>
                    <enabled>false</enabled>
                </snapshots>
                <releases>
                    <enabled>true</enabled>
                </releases>
            </repository>
        </repositories>
    </profile>
</profiles>

<activeProfiles>
    <activeProfile>MavenRepository</activeProfile>
</activeProfiles>

도움이 됐으면 좋겠다.

pom.xml(이클립스로 유효한 pom.xml을 로드한 후)에서 중앙 저장소 아래에 "https://repo.maven.apache.org/maven2"이 아닌 "http://repo.maven.apache.org/maven2"이 표시될 수 있습니다.고치다

언급URL : https://stackoverflow.com/questions/32125025/maven-and-spring-boot-non-resolvable-parent-pom-repo-spring-io-unknown-host

반응형