Dlaczego pojawia się nieznany błąd w linii 1 pliku pom.xml?

109

Pojawienie się nieznanego błędu w linii 1 pom.xmlw Eclipse IDE. Działało dobrze do wczoraj, ale nagle po zaktualizowaniu projektu z poziomu głównego i naprawieniu konfliktów scalania otrzymałem komunikat „Nieznany błąd” w pom.xml. Poza mną żaden z moich kolegów z drużyny nie ma tego problemu. Zmieniłem też obszar roboczy, usunąłem pamięć podręczną, ale nadal nie mam szczęścia.

Używam bazy danych h2 do tego projektu, pomimo wstawiania wartości w data.sql, nie zbiera żadnych wartości i nie wstawia do tabel DB h2. Przed tym wydaniem działało dobrze. Czuję, że jest to spowodowane problemem w pom.xml, chociaż nie jestem pewien. Proszę pomóż

Usunąłem istniejący projekt i pobrałem najnowszy kod od mastera. Następnie usunięto folder .m2 wśród użytkowników, w tym folder repozytorium. Zaktualizowałem projekt i włączyłem wymuszoną aktualizację migawek / wydań, maven clean i maven build. Ale nic nie pomaga.

pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.abc.roster</groupId>
    <artifactId>spring-boot-roster-app</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>jar</packaging>
    <name>spring-boot-roster-app</name>
    <description>Demo project for Spring Boot Roster</description>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.2.0.BUILD-SNAPSHOT</version>
        <relativePath /> <!-- lookup parent from repository -->
    </parent>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <java.version>1.8</java.version>
        <!-- <start-class>com.infosys.roster.SpringBootRosterAppApplication</start-class> -->
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-security</artifactId>
        </dependency>
        <!--encryption lib -->
        <dependency>
            <groupId>org.jasypt</groupId>
            <artifactId>jasypt</artifactId>
            <version>1.9.2</version>
        </dependency>

        <dependency>
            <groupId>org.jasypt</groupId>
            <artifactId>jasypt-springsecurity3</artifactId>
            <version>1.9.0</version>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-rest</artifactId>
        </dependency>

        <dependency>
            <groupId>com.h2database</groupId>
            <artifactId>h2</artifactId>
            <scope>runtime</scope>

        </dependency>


<!--        <dependency> -->
<!--         <groupId>org.hibernate</groupId> -->
<!--         <artifactId>hibernate-core</artifactId> -->
<!--         <version>5.2.10.Final</version> -->
<!--   </dependency> -->

        <!-- <dependency> -->
        <!-- <groupId>io.springfox</groupId> -->
        <!-- <artifactId>springfox-swagger2</artifactId> -->
        <!-- <version>2.7.0</version> -->
        <!-- <scope>compile</scope> -->
        <!-- </dependency> -->


        <!-- <dependency> -->
        <!-- <groupId>io.springfox</groupId> -->
        <!-- <artifactId>springfox-swagger-ui</artifactId> -->
        <!-- <version>2.7.0</version> -->
        <!-- <scope>compile</scope> -->
        <!-- </dependency> -->

        <!-- <dependency> -->
        <!-- <groupId>io.springfox</groupId> -->
        <!-- <artifactId>springfox-data-rest</artifactId> -->
        <!-- <version>2.7.0</version> -->
        <!-- </dependency> -->
    </dependencies>

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

    <repositories>
        <repository>
            <id>spring-snapshots</id>
            <name>Spring Snapshots</name>
            <url>https://repo.spring.io/snapshot</url>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </repository>
        <repository>
            <id>spring-milestones</id>
            <name>Spring Milestones</name>
            <url>https://repo.spring.io/milestone</url>
        </repository>
    </repositories>
    <pluginRepositories>
        <pluginRepository>
            <id>spring-snapshots</id>
            <name>Spring Snapshots</name>
            <url>https://repo.spring.io/snapshot</url>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </pluginRepository>
        <pluginRepository>
            <id>spring-milestones</id>
            <name>Spring Milestones</name>
            <url>https://repo.spring.io/milestone</url>
        </pluginRepository>
    </pluginRepositories>

</project> 

application.properties

server.port=
spring.h2.console.path=/h2
spring.h2.console.enabled=true

spring.datasource.url=


spring.datasource.username=
spring.datasource.password=
spring.datasource.driverClassName=org.h2.Driver
spring.datasource.platform=h2
spring.datasource.initialization-mode=always

spring.jpa.hibernate.ddl-auto=update
spring.datasource.continue-on-error=true

spring.jpa.show-sql=true
spring.jpa.properties.hibernate.format_sql=false

spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.H2Dialect

Powinienem usunąć nieznany błąd w pom.xml, a także muszę być w stanie wypełnić wartości w H2 db.

Shravani
źródło
Czy mówisz, że nikt inny nie ma problemu z tym samym plikiem pom?
Joakim Danielson
zaktualizuj błąd w pytaniu
vels4j
@JoakimDanielson tak, żaden z nich w moim zespole nie ma problemu z bazą kodu, której używam. Tylko ja mam do czynienia z tym problemem
Shravani
1
Mam dokładnie ten sam problem. Utworzyłem kilka nowych projektów rozruchu wiosennego ze start.spring.io i po zaimportowaniu projektów do Spring Tool Suite otrzymuję komunikat „Nieznany błąd” w pierwszym wierszu mojego pliku pom.xml. To właśnie zaczęło się w tym tygodniu.
Stephen
1
@Stephen Czy nadal masz ten problem. Udało mi się rozwiązać po zmianie <version> 2.2.0.BUILD-SNAPSHOT </version> na <version> 2.1.4.BUILD-SNAPSHOT </version>
Shravani

Odpowiedzi:

159

odpowiedź zgodnie z aktualnym stanem

Ten problem został rozwiązany:

Zainstaluj złącze m2e dla wtyczki mavenarchiver 0.17.3 z https://download.eclipse.org/m2e-wtp/releases/1.4/


przestarzała odpowiedź

Mniej głęboka zmiana niż obniżenie wersji Spring Boot 2.1.5.RELEASEdo 2.1.4.RELEASEobniżenia wersji dotyczy tylko wtyczki Maven JAR z 3.1.2do 3.1.1tak długo, jak ten błąd istnieje:

<properties>
    <!-- ... -->
    <maven-jar-plugin.version>3.1.1</maven-jar-plugin.version>
</properties>
Matthias
źródło
10
Najnowszy Eclipse (2019-03) ma ten sam problem. Zmiana wtyczki maven-jar-plugin z 3.1.2 na 3.1.1 na podstawie twojej sugestii rozwiązała problem. Wielkie dzięki.
Miklos Krivan
6
przestarzałą odpowiedzią było rozwiązanie, które zadziałało dla mnie
Del Pedro
1
Tak dla porządku, mój problem został rozwiązany poprzez aktualizację wtyczki mavenarchiver.
Matthias
2
po zainstalowaniu konektora m2e dla wtyczki mavenarchiver, zrestartuj maven & do maven -> zaktualizuj projekt ->
wymuś
1
zainstalowanie najnowszego złącza m2e dla mavenarchiver naprawiło to dla mnie
Ehsan Waris
36

U mnie zmieniłem w tagu nadrzędnym w pom.xml i rozwiązałem to zmień 2.1.5 na 2.1.4 potem Maven-> Update Project

fsuwailih
źródło
2
to samo tutaj! Nadal nie jestem pewien, co na wiosnę
pompka
@fsuwailih Dzięki temu udało się. Ale zastanawiam się, dlaczego to działa tylko dla niektórych ludzi, a dla innych nie.
Shravani
To rozwiązanie faktycznie zadziałało! Zmieniłem to na 2.1.4 z 2.1.6. Ale dlaczego nowsze wersje powodują ten błąd?
Arijit Basu
22

Zgodnie z sugestią @Shravani, w moim pliku pom.xml zmieniłem numer wersji w obszarze z tego:

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

do tego:

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

Następnie kliknąłem projekt prawym przyciskiem myszy i wykonałem polecenie „Maven -> Aktualizuj projekt ...”. To sprawiło, że problem zniknął dla mnie.

Stephen
źródło
19

Dodaj 3.1.1 do właściwości takich jak poniżej, niż napraw problem

<properties>
        <java.version>1.8</java.version>
        <maven-jar-plugin.version>3.1.1</maven-jar-plugin.version>
</properties>

Po prostu zaktualizuj projekt => kliknij prawym przyciskiem => Maven => Zaktualizuj projekt

Sadina Khatun
źródło
Ten problem wydaje się pojawiać w maven-jar-plugin 3.1.2 i 3.2.0.
Jean-Christophe
9

Musisz zaktualizować złącze m2e . To znany błąd, ale istnieje rozwiązanie

  1. W Eclipse kliknij „Pomoc”> „Zainstaluj nowe oprogramowanie ...”

  2. Pojawia się okno. W oknach „Instaluj”:

    2a. W polu „Praca z” wprowadź następną lokalizację witryny i naciśnij Enter https://download.eclipse.org/m2e-wtp/releases/1.4/

    2b. Pojawia się wiele informacji w polu wprowadzania „Nazwa”. Wybierz wszystkie elementy

    2c. Kliknij przycisk „Dalej”.

Zakończ instalację i uruchom ponownie Eclipse.

Antonio
źródło
1
Te instrukcje uważam za najczystszą ścieżkę do wdrożenia rozwiązania, o którym wszyscy mówią, że jest główną przyczyną problemu - potrzebą aktualizacji tego złącza. Również zadziałało. : ^)
rich p
4

Zaktualizowałem kombinezony sprężynowe, przechodząc do help> check for update.

user10095279
źródło
1

Chociaż nie mogę odtworzyć twojego błędu (jak żaden z twoich kolegów z drużyny też nie może), mam sugestię, która może ci pomóc.

Czy słyszałeś o znaku kolejności bajtów ? Jak widać w linii 1, jest to prawdopodobny kandydat do rozwiązania Twoich problemów. Może gdzieś zmieniłeś ustawienie, które w jakiś sposób prowadzi do błędu. Myślę, że ten cytat z artykułu w Wikipedii jest szczególnie istotny:

Użycie BOM jest opcjonalne. Jego obecność przeszkadza w używaniu UTF-8 przez oprogramowanie, które nie oczekuje bajtów innych niż ASCII na początku pliku, ale w przeciwnym razie mogłoby obsłużyć strumień tekstowy.

AplusKminus
źródło
Po zmianie wersji tagu rodzica zadziałało magicznie
Shravani
1

dla mnie ten sam problem, oryginalny kod z dema rozrusznika sprężynowego daje nieznany błąd w linii 1:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.1.6.RELEASE</version>
    <relativePath/> <!-- lookup parent from repository -->
</parent>
...

Zmiana samej wersji 2.1.6.RELEASE na 2.1.4.RELEASE rozwiązuje problem.

mjames276
źródło
1

Dla mnie Zmieniłem w tagu dominującej pom.xml i rozwiązać go change 2.1.5 to 2.1.4potem Maven-> Update Project. to zadziałało również dla mnie.

pushpendra yadav
źródło
1

Dla mnie zmiana pom.xml dla projektu SpringBoot 2 z 2.1.6.RELEASE

<parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.6.REL`enter code here`EASE</version>
        <relativePath /> <!-- lookup parent from repository -->
</parent>

do 2.1.4. WERSJA zweryfikowana i działa

<parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.4.RELEASE</version>
        <relativePath /> <!-- lookup parent from repository -->
</parent>
PatVictorio
źródło
Miałem na myśli 2.1.4. WYDANIE.
PatVictorio
Zredagowałem moją odpowiedź i poprawiłem literówkę.
PatVictorio
0

Otrzymałem ten błąd na eclipse IDE w wersji 4.10, Spring boot 2.2.0.M4, zmieniłem wersję Spring boot na 2.2.0.M2 (po wielu innych zalecanych rozwiązaniach i rozwiązano błąd). Może czegoś brakuje lub jest zepsute w najnowszej wersji modułu projektu Spring boot starter maven POM.

tksilicon
źródło
0

W moim pliku pom.xml musiałem obniżyć wersję z 2.1.6.RELEASE dla artefaktu spring-boot-starter-parent do 2.1.4.RELEASE

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

do zmiany na

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

I ten dziwny nieznany błąd zniknął

nitinr708
źródło
0

<maven-jar-plugin.version>3.1.1</maven-jar-plugin.version>under <properties>tag naprawił problem.

chetan007
źródło
0

Potrzebujesz tylko najnowszego pakietu narzędzi Eclipse lub Spring w wersji 4.5 lub nowszej. Projekt Nic else.refresh i działa

bimlesh prasad singh
źródło
0

Otrzymałem ten sam błąd w wersji 3. Zadziałało po aktualizacji STS do najnowszej wersji: 4.5.1.RELEASE . Nie była wymagana zmiana kodu ani konfiguracji w najnowszym STS.

Vikash Gupta
źródło
0

kiedykolwiek napotkasz tego typu błąd, po prostu zmień wersję wydania, tak jak W moim przypadku pokazuje błąd w 2.2.7 Zmieniłem na 2.2.6

Problem:

<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.7.RELEASE</version>

Rozwiązanie:

<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.6.RELEASE</version>
user13635706
źródło
-1

Poniższe działania zadziałały dla mnie.

1.Przejdź do projektu na pasku narzędzi -> niezaznaczone „Buduj automatycznie”

W pliku POM obniż wersję Spring-boot do 2.1.4 RELEASE.

3. Kliknij prawym przyciskiem myszy nazwę projektu -> wybierz Maven -> kliknij „Aktualizuj projekt”. -> OK Poczekaj, aż cała zależność maven zostanie pobrana (Potrzebujesz internetu).

madhavi desale
źródło