0
votes

Tomcat 8 Spring Boot ne lisait pas Application.Properties

Je travaille avec Java Spring pour la première fois sur un projet personnel et je ne peux pas sembler avoir aucune des propriétés de l'application.Proporties pour fonctionner correctement. Je l'ai simplifié à ce cas d'essai et il ne semble pas faire quoi que ce soit:

Application.Properties P>

10:28:22.628 [http-nio-8080-exec-114] INFO org.springframework.web.context.ContextLoader - Root WebApplicationContext: initialization started
10:28:22.634 [http-nio-8080-exec-114] DEBUG org.springframework.web.context.support.StandardServletEnvironment - Adding PropertySource 'servletConfigInitParams' with lowest search precedence
10:28:22.634 [http-nio-8080-exec-114] DEBUG org.springframework.web.context.support.StandardServletEnvironment - Adding PropertySource 'servletContextInitParams' with lowest search precedence
10:28:22.636 [http-nio-8080-exec-114] DEBUG org.springframework.web.context.support.StandardServletEnvironment - Adding PropertySource 'jndiProperties' with lowest search precedence
10:28:22.636 [http-nio-8080-exec-114] DEBUG org.springframework.web.context.support.StandardServletEnvironment - Adding PropertySource 'systemProperties' with lowest search precedence
10:28:22.636 [http-nio-8080-exec-114] DEBUG org.springframework.web.context.support.StandardServletEnvironment - Adding PropertySource 'systemEnvironment' with lowest search precedence
10:28:22.636 [http-nio-8080-exec-114] DEBUG org.springframework.web.context.support.StandardServletEnvironment - Initialized StandardServletEnvironment with PropertySources [StubPropertySource@36449077 {name='servletConfigInitParams', properties=java.lang.Object@24214aae}, StubPropertySource@1983551321 {name='servletContextInitParams', properties=java.lang.Object@6e836355}, JndiPropertySource@219519027 {name='jndiProperties', properties=org.springframework.jndi.JndiLocatorDelegate@234fc705}, MapPropertySource@23923818 {name='systemProperties', properties={awt.toolkit=sun.awt.X11.XToolkit, java.specification.version=10, file.encoding.pkg=sun.io, sun.cpu.isalist=, sun.jnu.encoding=UTF-8, java.class.path=/usr/share/tomcat8/bin/bootstrap.jar:/usr/share/tomcat8/bin/tomcat-juli.jar, java.vm.vendor=Oracle Corporation, sun.arch.data.model=64, java.vendor.url=http://java.oracle.com/, catalina.useNaming=true, user.timezone=America/Los_Angeles, os.name=Linux, java.vm.specification.version=10, sun.java.launcher=SUN_STANDARD, user.country=US, sun.boot.library.path=/usr/lib/jvm/java-11-openjdk-amd64/lib, sun.java.command=org.apache.catalina.startup.Bootstrap start, jdk.debug=release, sun.cpu.endian=little, user.home=/var/lib/tomcat8, user.language=en, java.specification.vendor=Oracle Corporation, java.naming.factory.url.pkgs=org.apache.naming, java.version.date=2018-07-17, java.home=/usr/lib/jvm/java-11-openjdk-amd64, ignore.endorsed.dirs=, file.separator=/, java.vm.compressedOopsMode=32-bit, line.separator=
10:28:22.639 [http-nio-8080-exec-114] DEBUG org.springframework.web.context.support.StandardServletEnvironment - Replacing PropertySource 'servletContextInitParams' with 'servletContextInitParams'
10:28:22.639 [http-nio-8080-exec-114] INFO org.springframework.web.context.support.AnnotationConfigWebApplicationContext - Refreshing Root WebApplicationContext: startup date [Tue Jan 15 10:28:22 PST 2019]; root of context hierarchy


2 commentaires

Je vous suggère de lancer directement votre Appinitializer sans créer de guerre et le déploier. Springboot est livré avec tomcat / jetée intégrée qui sera prête à être utilisée. De cette façon, vous pouvez déboguer votre problème plus facilement


Pouvez-vous donner un exemple sur la façon de faire cela? Je n'utilise pas d'IDE, de Maven ou de grades. Les docs disent que je peux le faire passer d'un pot, mais cela ne dit pas quelle devrait être la mise en page de ce pot.


3 Réponses :


-1
votes
  1. Spring présente également la nouvelle annotation @properTysource, en tant que mécanisme pratique pour ajouter des sources de biens à l'environnement. Cette annotation doit être utilisée conjointement avec la configuration basée sur Java et l'annotation @configuration:

    @configuration @Propertysource ("ClassPath: foo.properties") Applinitializer de classe publique { // ... }

  2. Un autre moyen très utile d'enregistrer un nouveau fichier de propriétés utilise un espace réservé pour vous permettre de sélectionner de manière dynamique le bon fichier au moment de l'exécution; Par exemple:

    @propertysource ({ "ClassePath: Persistence - $ {EnvTarget: mysql} .properties" })

  3. Vous pouvez utiliser dans XML, de nouveaux fichiers de propriétés peuvent être accessibles au ressort via l'élément d'espace de noms:

    Le fichier FOO.PROPERTES doit être placé sous / SRC / MAIN / RESSOURCES afin qu'il soit disponible sur la classe de classe au moment de l'exécution.


0 commentaires

1
votes

Veuillez utiliser slf4j.logger sur apache.commons.logging


0 commentaires

1
votes

Utiliser LoggerFactory au lieu de org.apache.commons. Logging.LogFactory : xxx

ou enregistreur statique: xxx


3 commentaires

@ user2752635 Pouvez-vous montrer plus de configuration de journal pertinente comme dans POM par exemple?


Je n'utilise pas Maven. J'ai un fichier ivy.xml quelle fourmis utilise pour télécharger des dépendances. Vouliez-vous voir ça?


J'ai ajouté la partie bootstrap et la portion de journalisation de l'ivy.xml