Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Hallo ich habe folgendes Problem und zwar bekomme ich immer einen Error wenn ich versuche mein Programm zu starten. Ich habe schon versucht das Projekt zu cleanen und zu rebuilden, allerdings kommt jedes mal folgender Error:
Code:
Caused by: org.gradle.api.internal.artifacts.ivyservice.DefaultLenientConfiguration$ArtifactResolveException:
Could not resolve all files for configuration ':app:debugRuntimeClasspath'.
Dieser Error taucht erst auf seit dem ich folgendes in meine dependencies geschrieben habe:
Mir ist bekannt, dass es mitlerweile jakarta.persistence gibt, allerdings sind alle meine Versuche das einzubinden fehlgeschlagen. Da mir dann nur angezeigt wird das springframework nicht gefunden werden kann.
Vielen Dank schonmal für jede Idee wie ich den Error lösen kann. : )
Was steht denn da sonst so alles in Deinen Abhängigkeiten?
Generell mischst Du keine Spring Boot Versionen! Wenn Du Spring Boot 2.x nutzt (Dann bitte nicht 2.1.3 sondern die letzte 2er was 2.7.9 oder so sein dürfte), dann hast Du die javax.* Imports.
Ab Spring Boot 3 ist der Wechsel auf jakarta erfolgt. Da javax mit jakarta zu mischen ist der größte Unsinn, den man machen kann in einer App, weil es da schlicht zu massiven Problemen kommen muss. Eine Komponente ist neu und erwartet ein jakarta.irgendwas aber die alte Komponente stellt nur ein javax.irgendwas zur Verfügung. Dieses Kuddelmuddel willst Du nicht.
(Klar - technisch gehen mag es, aber dann sollten die Teile sauber getrennt sein und so, so dass es zu solchen Problemen nicht kommt. Aber auch da macht es vermutlich in den wenigsten Fällen Sinn!)
Damit ist es ein x y Problem - Du hattest eigentlich dieses Problem. Beim Versuch es zu lösen bist Du dann verrant in das andere Problem. Das sollte man aber dann ignorieren und wirklich das eigentliche Problem lösen! Also was ist da wie schief gegangen?
Bei Spring Boot sollte man - so man nicht genau weiss, was man macht - das von Spring Initializr erstellte Projekt nutzen. Da hat man dann ein Parent Projekt und darüber werden die Abhängigkeiten von Spring Komponenten gesetzt. Du gibst dann für Dinge, für die eine Version vorgegeben wird, keine Version mehr an! (Ich wiederhole mich: Es sei denn, Du weisst genau, was Du da tust!) Wobei ich hier eingestehen muss: Das ist das Vorgehen bei Maven. Ich weiss nicht, ob Gradle das Weglassen der Version und die parent Projekte ebenso unterstützt. Irgend etwas in der Art wird es da aber hoffentlich auch geben. Denn das ist ja etwas, das Spring Boot für Anfänger auch deutlioch erträglicher macht - diese kompatiblen Abhängigkeiten finden muss man nicht selbst durchführen. Das machen die Spring Entwickler!
Also bitte: Nutze das spring-boot-starter-jpa in der gleichen Version, wie Du halt in deinem Spring Boot Projekt verwendest. Und keine andere Version!
Und dann schaut man in Ruhe nach den Problemen, die Du da bekommen hast und dann lösen wir diese. Und die Lösung wird nicht sein, dass wir eine asbach uralt Sprin Boot Abhängigkeit nutzen. (zumindest bin ich mir da zu 99,9% sicher )
Also bitte: Nutze das spring-boot-starter-jpa in der gleichen Version, wie Du halt in deinem Spring Boot Projekt verwendest. Und keine andere Version!
Und dann schaut man in Ruhe nach den Problemen, die Du da bekommen hast und dann lösen wir diese. Und die Lösung wird nicht sein, dass wir eine asbach uralt Sprin Boot Abhängigkeit nutzen. (zumindest bin ich mir da zu 99,9% sicher )
Ich hatte es erst versucht mit version 3.0.3 und dann jakarta zu verwenden allerdings hat es dann wie schon erwähnt springframework nicht mehr gefunden und da irgendwo muss ich mir dann irgendwelche Lösungsvorschläge zusammen gewürfelt haben, weshalb ich jetzt den Error bekomme
und dann wie oben. Allerdings ist der Error schon bei der Ersten Version aufgetreten und ich dachte ich könnte es mit den Abänderungen der dependencies irgendwie lösen(was offensichtlich nicht der richtige Weg war)...
Ach sorry, das mit der Android App hatte ich überlesen. In meiner Antwort bin ich noch von einer "normalen" Spring Anwendung ausgegangen. Das mit dem Spring Initializr ist damit natürlich Quatsch und nicht auf Dein Projekt übertragbar.
Und da habe ich schlicht zu wenig Erfahrung mit der Android Entwicklung, so dass ich Dir da dann doch nicht weiter helfen kann.
Ach sorry, das mit der Android App hatte ich überlesen. In meiner Antwort bin ich noch von einer "normalen" Spring Anwendung ausgegangen. Das mit dem Spring Initializr ist damit natürlich Quatsch und nicht auf Dein Projekt übertragbar.
Und da habe ich schlicht zu wenig Erfahrung mit der Android Entwicklung, so dass ich Dir da dann doch nicht weiter helfen kann.
Klar kann man. Ich glaube man muss ein wenig darueber nachdenken wie man damit umgeht dass die App eventuell ploetzlich vom Betriebssystem "schlafen" geschickt wird, aber ansonsten kann man sehr wohl.
Es gab mal ein Projekt "Spring for Android" (eingestellt): https://spring.io/projects/spring-android . Trotzdem könnte es ein anderes Portal geben mit welchem man Android-Anwendungen a la Springboot zusammenklickt (allerdings ist die Änderungsrate in der Android-API auch höher als bei Spring)