2017-06-09 2 views
1

Cette question est déjà demandé, mais je suis en train de la même chose qui est en réponse acceptéeVelocity Impossible de trouver des ressources

protected static final String RESOURCE_LOADER = classpath.resource.loader.class";  

static { 
    System.out.println("Velocity Initialization Started"); 
    velocityEngine = new VelocityEngine(); 
    velocityEngine.setProperty(RuntimeConstants.RESOURCE_LOADER, "classpath"); 
    velocityEngine.setProperty(RESOURCE_LOADER,ClasspathResourceLoader.class.getName()); 
    try { 
     velocityEngine.init(); 
    } catch (Exception e) { 

     LOG.error("Failed to load velocity templates e={}", e); 
    } 
} 

mon fichier de vitesse est en

src/main/resources/velocity/templates/command/name.vm 

Je reçois des modèles en suivant commande

template = velocityEngine.getTemplate("velocity/templates/command/GenericState.vm"); 

il fonctionne localement, mais quand il est fourni dans un pot, il ne fonctionne pas, je l'ai examiné le pot, il con SIST du dossier de vitesse

J'utilise la vitesse au code java généré

J'ai la configuration du projet Maven et Maven crée pot

Répondre

2

essayer cette façon, il devrait fonctionner.

velocityEngine.setProperty(RuntimeConstants.RESOURCE_LOADER, "class,file"); 
    velocityEngine.setProperty(RuntimeConstants.RUNTIME_LOG_LOGSYSTEM_CLASS, "org.apache.velocity.runtime.log.Log4JLogChute"); 
    velocityEngine.setProperty("runtime.log.logsystem.log4j.logger", "VELLOGGER"); 
    velocityEngine.setProperty("class.resource.loader.class", "org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader"); 
    velocityEngine.setProperty("runtime.log.logsystem.class", "org.apache.velocity.runtime.log.NullLogSystem"); 
    velocityEngine.init(); 
+0

et de donner le chemin complet pour le modèle comme template = velocityEngine.getTemplate ("velocity/templates/command/GenericState.vm"); – Ravi

+0

@Ravi a travaillé ou non? – soorapadman

+0

as-tu ajouté mon code avec ton code? Essayez de cette façon '/velocityEngine.getTemplate("velocity/templates/command/Gener icState.vm"); 'ou' ../'avant la vélocité et vérifiez. – soorapadman