Problem ze znalezieniem klasy głównej podczas odpalania projektu (ClassNotFoundException)

0

Cześć,
rozpoczynam pracę w nowym projekcie, wczoraj zrobiłem pulla repo i odpaliłem w intelliJu (2020.3 Ultimate), zbudowałem bez problemów i do dziś nie chce ruszyć.
Podczas odpalania wyświetla się:

"C:\Program Files (x86)\Java\OpenJDK11U-jdk_x64_windows_hotspot_11.0.10_9\jdk-11.0.10+9\bin\java.exe" -Dspring.profiles.active=localhost -XX:TieredStopAtLevel=1 -noverify -Dspring.output.ansi.enabled=always "-javaagent\Program Files\JetBrains\IntelliJ IDEA 2020.2.1\lib\idea_rt.jar=56524\Program Files\JetBrains\IntelliJ IDEA 2020.2.1\bin" -Dcom.sun.management.jmxremote -Dspring.jmx.enabled=true -Dspring.liveBeansView.mbeanDomain -Dspring.application.admin.enabled=true -Dfile.encoding=UTF-8 @C:\Users\Andrzej\AppData\Local\Temp\idea_arg_file2022120258 <path>.BackendApplication
Error: Could not find or load main class pl.gov.csioz.ekrew.backend.BackendApplication
Caused by: java.lang.ClassNotFoundException: <path>.BackendApplication

Na początku miałem wgraną javę 14 i wyskakiwała jeszcze linijka o zgodności javy, dlatego wgrałem open JDK 11, zmieniłem w zmiennych środowiskowych, dodałem SDK w ProjectStructure w intelliju oraz w Edit Configurations zmieniłem język.
Cały projekt zgodny z masterem ("innym działa").
Dokonując zmian w zmiennych środowiskowych restartowałem komputer. Po nieudanych próbach odpalania projektu robiłem Invalidate Cashes / Restart
Dla ścisłości: ścieżka do main klasy jest prawidłowo wskazana w edit configuration, a trójkątne znaczniki run poprawnie wyświetlają się na jej podglądzie, co czyni powyższy błąd dosyć dziwnym.
W trakcie budowania wyświetla się też:

Deprecated Gradle features were used in this build, making it incompatible with Gradle 7.0

Będę wdzięczny za wszelkie pomysły dotyczące potencjalnej przyczyny!

0

Run configuration zrobiłeś "ręcznie" czy kliknąłeś na zielony trójkąt? Wywal wszystkie run configurations i kliknij z tego trójkąta żeby intellij zrobił nową konfiguracje. Może jest jakoś źle ustawiony classpath?

0

Spróbuj może gradle clean build

0

Budowałem wrapperem i samym gradlem, ale nie budowało się, bo się wykrzaczał na testach, które są pisane za Spockiem. W związku z tym uświadomiłem sobie, że nie mam zainstalowanego grooviego (miałem jedynie wtyczkę w intellij) - intellij nie poinformował mnie o tym.
Po dodaniu grooviego projekt zbudował się nieco inaczej niż wcześniej, bo pokazał się jar. Spróbowałem odpalić z trójkącika i wyskoczył ten sam błąd, ale z jara już poszło.
I teraz to co ważne. To zgodnie z zaleceniami innych osób w projekcie w Edit Configurations Shorten command line powinno być ustawione na opcję @argfile, przy której projekt nie wstaje, natomiast jeżeli zmienię tam na "Jar manifest" to również "z trójkącika" poprawnie odpala. Ma ktoś pomysł jak instalacja grooviego pozwoliła na utworzenie jara i dlaczego z opcją "jar manifest" spring wstaje, a z @argfile nie?

0

Ma ktoś pomysł jak instalacja grooviego pozwoliła na utworzenie jara

Skoro testy failowały to nie dziwne ze aplikacja się nie budowała ;) Jar powstaje na sam koniec dopiero.

dlaczego z opcją "jar manifest" spring wstaje, a z @argfile nie

Inna wersja JDK i coś ćpa?

0

A może mieć znaczenie że mam openJDK a nie oraclowe?

0

Wątpliwe.

1 użytkowników online, w tym zalogowanych: 0, gości: 1