JDBC 永続性を使用して次のブローカーをセットアップしようとしています。
<amq:broker id="activeMQBroker" brokerName="activeMQBroker" useJmx="false" persistent="true">
<amq:transportConnectors>
<amq:transportConnector name="vm" uri="vm://activeMQBroker" />
</amq:transportConnectors>
<amq:persistenceAdapter>
<amq:jdbcPersistenceAdapter dataSource="#dataSource" />
</amq:persistenceAdapter>
</amq:broker>
起動時に、次のようになります。
java.lang.NoClassDefFoundError: org/apache/kahadb/page/Transaction$Closure
KahaDB JAR をクラスパスに追加すると、すべて問題なく、ActiveMQ データベース テーブルが (Postgres に) 作成されます。ただし、使用していないため、この追加の依存関係は避けたいと思います。
JDBCを使用しているにもかかわらず、ActiveMQがまだKahaDBを探している理由は何ですか? この質問schedulerSupport="false"
で説明されているように、設定を試みましたが、うまくいきませんでした。
PS十分な担当者がいる場合は、「KahaDB」タグを作成してください。