Le projet que je créais à l'origine était Spring Boot 1.3.3, Puisqu'il y avait une vulnérabilité Spring Framework en avril, Nous avons décidé de passer à Spring Boot 1.5.12, ce qui correspond à cela.
Bien sûr, il ne suffisait pas de réécrire la version avec pom.xml ... Les problèmes survenus à ce moment-là et la manière de les résoudre sont répertoriés ci-dessous.
J'ai utilisé les deux annotations suivantes dans le code de test, Avec la mise à jour de la version, j'ai commencé à me mettre en colère de ne pas pouvoir la trouver.
@SpringApplicationConfiguration(classes=MyConfig.class)
@WebIntegrationTest
Après enquête, il est dit que les deux utiliseront `` @ SpringBootTest '' à la place sur la page suivante. https://stackoverflow.com/questions/42395225/springapplicationconfiguration-not-found-erroneous-spring-boot-starter-test-con
From @SpringApplicationConfiguration(classes=MyConfig.class) to @SpringBootTest(classes=MyConfig.class) From @WebIntegrationTest to @SpringBootTest(webEnvironment=WebEnvironment.DEFINED_PORT) (or RANDOM_PORT)
J'ai utilisé les deux cette fois, donc je l'ai réécrit comme suit.
@SpringBootTest(classes=MyConfig.class, webEnvironment=WebEnvironment.RANDOM_PORT)
Avec ce qui précède, l'erreur du code de test a été résolue.
# Erreur d'interface introuvable
J'importais l'interface ```EmbeddedServletContainerCustomizer``` pour afficher l'écran d'erreur.
Lorsque je le construis après la mise à niveau, je me fâche de ne pas le trouver.
vraiment? J'ai cherché une alternative comme le code de test ci-dessus, mais je ne l'ai pas trouvée ...
N'est-ce vraiment pas là? J'ai pensé, et quand j'ai cherché la hiérarchie sous `` `` spring-boot-1.5.12.RELEASE.jar '' ``,
```embeddedservletcontainercustomizer```Le fichier d'interface lui-même existait.
Lorsque j'essaye de voir le contenu dessus, l'erreur suivante se produit et je ne peux pas voir le contenu.```
java.util.zip.ZipException: invalid LOC header (bad signature)
Quand je l'ai recherché, il semble que la cause en soit que la version du fichier jar soit incorrecte. Pour contourner ce problème, supprimez le dossier de référentiel maven suivant et redémarrez STS.
C: \ Users \ [nom d'utilisateur] \ .m2 \ repository
Ceci termine la gestion de l'erreur d'interface introuvable.
En dehors des deux correspondances ci-dessus Quand j'ai pensé à exécuter le projet après la mise à niveau de la version, L'erreur désespérée suivante se produit.
Exception in thread "main" java.lang.NoClassDefFoundError: org/springframework/boot/SpringApplication
at jp.co.ysk.pepper.qlip.App.main(App.java:12)
Caused by: java.lang.ClassNotFoundException: org.springframework.boot.SpringApplication
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 1 more
J'ai fait des recherches, mais je ne connais pas la cause profonde. Pour le moment, cette erreur a également été résolue en éliminant les deux erreurs de compilation.
Je me sens un peu mal à l'aise, mais ... c'est tout.
Recommended Posts