Table of Contents |
---|
Source
Firstly, check out the source from the subversion reporsitory or the git mirror.
...
Profile Name | Description |
---|---|
java-mms.0-10 | Test profile to use AMQP 0-10, the Memory Message Store and the Java Broker for system testing |
java-mms.0-9-1 | Test profile to use AMQP 0-9-1, the Memory Message Store and the Java Broker for system testing |
java-mms.0-9 | Test profile to use AMQP 0-9, the Memory Message Store and the Java Broker for system testing |
java-bdb.0-10 | Test profile to use AMQP 0-10, the BDB Message Store and the Java Broker for system testing |
java-bdb.0-9-1 | Test profile to use AMQP 0-9-1, the BDB Message Store and the Java Broker for system testing |
java-bdb.0-9 | Test profile to use AMQP 0-9, the BDB Message Store and the Java Broker for system testing |
java-dby-mem.0-10 | Test profile to use AMQP 0-10, the Derby In-Memory Message Store and the Java Broker for system testing |
java-dby-mem.0-9-1 | Test profile to use AMQP 0-9-1, the Derby In-Memory Message Store and the Java Broker for system testing |
java-dby-mem.0-9 | Test profile to use AMQP 0-9, the Derby In-Memory Message Store and the Java Broker for system testing |
java-dby.0-10 | Test profile to use AMQP 0-10, the Derby Message Store and the Java Broker for system testing |
java-dby.0-9-1 | Test profile to use AMQP 0-9-1, the Derby Message Store and the Java Broker for system testing |
java-dby.0-9 | Test profile to use AMQP 0-9, the Derby Message Store and the Java Broker for system testing |
java-json.0-9-1 | Test profile to use AMQP 0-9-1, the Json Configuration Store Derby Message Store and the Java Broker for system testing |
java-json.0-10 | Test profile to use AMQP 0-10, the Json Configuration Store Derby Message Store and the Java Broker for system testing |
cpp | Test profile to use AMQP 0-10 and the C++ for system testing |
apache-release | Release profile for performing Apache software releases |
dependency-check | Dependency check to validate project licensing ahead of release |
joramtests | Profile used to execute the Joram JMS test suite (more below). |
tck | Profile used to execute the JMS TCK (more below) |
IDE setup
Nowadays, most of the team chose IntelliJ.
...
Maven Build Output
By default the build output for a maven module will appear in the modules "target" directory:
...
Todo. Describe the running of the AMQP 1.0 test suite using the swigged binding/proton-c. See the https://builds.apache.org/view/M-R/view/Qpid/job/Qpid-Python-Java-Test/.
IDE integration
Nowadays, most of the team chose IntelliJ.
IntelliJ
To setup the project, simply import the POM that resides at the top level.
Configuring the Annotation Processor
The build uses Java Annotation Processors to automatically generate code for things such as factories. Intellij's annotation processor defaults don't play nicely with Maven. A symptom of this is missing implementation classes when you try and start the Broker.
Go into "Preferences" -> "Annotation Processors"
- Ensure that the default profile includes all modules.
- Ensure that Enable Annotation Processing is ticked.
- Ensure that the Production Source Directory and Test Source Directory match that used by Maven
target/generated-sources/annotations
target/generated-test-sources/test-annotations
- The option Obtain processors from project classpath does not seem to work. As a workaround, you may use Processor Path specify the path to the codegen's JAR
- /path/to/home/.m2/repository/org/apache/qpid/qpid-broker-codegen/6.2.0-SNAPSHOT/qpid-broker-codegen-6.2.0-SNAPSHOT.jar
This workaround does mean that you need to remember to mvn install
each time the codegen project is changed, and update the version number each time the version number bumps.
Running the Broker within Intellij
TODO
Running System Tests within Intellij
TODO