0
votes

Noschmethoderror à Apache Camel Java

J'ai couru le code suivant: xxx pré>

pour transformer les données du dossier INPUT_BOX à Activeremq. p>

Je reçois l'erreur suivante: p>

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.dinesh</groupId>
  <artifactId>camel-application1</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <dependencies>
  
  <!-- https://mvnrepository.com/artifact/org.apache.camel/camel-core -->
<dependency>
    <groupId>org.apache.camel</groupId>
    <artifactId>camel-core</artifactId>
    <version>2.14.4</version>
</dependency>

 <dependency>
    <groupId>org.apache.camel</groupId>
    <artifactId>camel-jms</artifactId>
    <version>2.24.0</version>
</dependency>
<dependency>
    <groupId>org.apache.camel</groupId>
    <artifactId>camel-activemq</artifactId>
    <version>3.0.0</version>
</dependency>
  
  </dependencies>
</project>


2 commentaires

On dirait que vous avez des versions mixtes de pots de chameaux sur votre parcours de classe. Assurez-vous d'utiliser la même version uniquement.


Org.apache.camel Camel-Core 2.14.4 org.apache.camel CAMEL-JMS 2.24.0 org.apache.camel Camel-ActiveMQ < / artifactide> 3.0.0


3 Réponses :


1
votes

Selon votre POM, vous mélangez 3 versions de chameaux différentes: 2.14.4, 2.24.0 et 3.0.0.

Vous devez utiliser la même version pour tous les composants de chameaux, car @ Claus-Ibsen a déjà commenté. < / p>

le faire par exemple comme l'exemple ci-dessous (avec des propriétés pour les versions-cadres et utilisez-la dans toutes ses dépendances).

Cependant, comme Sneharghya déjà répondu, Camel 2.x n'a pas de Camel-ActiveMQ Mais peut plutôt utiliser la dépendance ActiveMQ-Camel d'Activemq.

Par conséquent, le POM devrait ressembler à ceci. Mais je pense que la version de chameau peut varier. xxx

Vous pouvez également utiliser Maven Dépendencymanagement .


4 commentaires

Comment obtenir la même version? S'il vous plaît dit, Bec 'Je suis nouveau à Apache Camel Framework.Merci à l'avance.


J'ai mis à jour ma réponse. Ce n'est en fait pas un chameau mais un problème maven


Après avoir mis à jour une autre erreur est arrivé, mais pour au-dessus de la version POM.XML ActivemQ est différente des 2 autres dépendances.So j'ai mis à jour en conséquence.Nouvez l'erreur suivante: Exception dans le fil "Main" Java.lang.noschmethoderror: org.apache.acivemq .camel.component.ActivEMQcomponent.getmes SagecreatedStrategy () LORG / APACHE / CAMEL / C OMPONENT / JMS / Message CreatureStrategy; au contexte.start (); dans le code ci-dessus.


Désolé, je n'ai pas remarqué le nouveau composant camel-activemq . J'ai réparé ma réponse, mais le Noschmethoderror est toujours un problème de version mixte



0
votes

camel-activemq code> n'est pas disponible pour les versions de plus de 3,0. Si vous souhaitez continuer à utiliser CAMEL 2.24.3, supprimez la dépendance code> camel-activemq CODE> à partir de votre fichier POM et ajoutez

<dependency>
    <groupId>org.apache.activemq</groupId>
    <artifactId>activemq-camel</artifactId>
    <version>5.15.13</version>
</dependency>


6 commentaires

Après la mise à jour comme ci-dessus, l'erreur suivante est à venir.Exception dans le thread "Main" Java.lang.noschmethoderror: org.apache.activemq.camel.component.Activemqcomponent.getmes SagecreatedStrategy () Lorg / Apache / Camel / C Omponent / jms / message créétrategy ;, à context.start ().


En fait, j'utilise Activeemq version 5.15.4, pour cela, dites-moi la version de Camel Core.in Maven Pom.xml.


Utilisez ActiveMQ-Camel version 5.15.4. Camel 2.24.3 ira bien!


Non, ça ne marche pas, une nouvelle exception est de venir. Pour moi. PortiVemq: 5.8.0, Camel Core-2.12.1 Il n'y a pas d'erreurs (sur le temps d'exécution également) .Mais ma version Activeemq est 5.15.4 SO SE SUITE N'EST PAS À VENIR. Donc, veuillez dire pour Activemq 5.15.4, quelle est la version exacte de Camel Core? Dans Maven Pom.


Essayez avec chameau 2.19.5


toujours même problème.



0
votes

1. Mettre à jour la classe Il y a deux problèmes.

  • Un que vous enregistriez votre composant dans un nom jms et envoyez le message à un composant différent activeemq . Ils devraient être les mêmes.
  • Vous faisiez une boucle tandis que la boucle tandis que la boucle de démarrage du contexte plusieurs fois. xxx

    2. Remplacez les dépendances en POM comme suit: xxx


4 commentaires

Bonjour, je veux utiliser activemq uniquement.Veuillez dites au code.bec 'de ces exemples J'ai téléchargé ActiveMQ d'Internet et je l'ai couru.


Maintenant je l'ai essayé. Il n'y a pas d'erreurs d'exécution / exceptions.but Sortie ne se présente pas. /Admin/Quues.jsp)Here "rel =" NOFOollow NOREFERRER "> localhost: 8161 / admin / files d'attente.jsp), voici le fichier ne remplit pas.


Fichier Message consommé Continuer à venir, je pense que certains problèmes d'activemq.Not sont sûrs.


Laissez-nous Continuez cette discussion en chat .