| <div class="wiki-content maincontent"><p>If you get an exception looking like this</p> |
| <structured-macro ac:macro-id="5c09a37c-461c-400a-8682-4acaa5c967c4" ac:name="code" ac:schema-version="1"><plain-text-body> |
| Reason: java.io.exception : could not find class for resource: META-INF/services/org/apache/activemq/transport/tcp |
| </plain-text-body></structured-macro> |
| <p> </p> |
| |
| <h3>Cause</h3> |
| |
| <p>You are probably using the ActiveMQ source code without using the resources</p> |
| |
| <h3>Quick fix</h3> |
| |
| <p>Try one of these</p> |
| <ul><li>use one of the distribution jars for ActiveMQ</li><li>use Maven to run your program</li><li>try adding activemq/src/conf to your classpath</li></ul> |
| |
| |
| <h3>Background</h3> |
| |
| <p>Then it means that the files in META-INF/services could not be found on the classpath. These files are used to support loose coupling on ActiveMQ with the transport protocols (e.g. to avoid a classpath dependency on JXTA) and to allow dynamic protocol enhancement without a change to the core.</p> |
| |
| <p>So we're using the META-INF/services files as a way of coupling a protocol used in URL connections to a Java class name.</p></div> |
| |