Mirror of Apache ActiveMQ Artemis
Go to file
Justin Bertram 896537700a
This closes #4254
2022-10-13 11:20:01 -05:00
.github ARTEMIS-4020: stop CI jobs trying to activate tests-CI logging config profile, it no longer exists 2022-09-30 14:56:19 +01:00
.settings ACTIVEMQ6-1 - Initial HornetQ Donation Commit 2014-11-10 10:31:25 -06:00
artemis-boot ARTEMIS-4020: switch to using SLF4J API for logging, use Log4J 2 as impl for broker distribution and tests 2022-09-28 14:01:54 -04:00
artemis-cdi-client ARTEMIS-4020: switch to using SLF4J API for logging, use Log4J 2 as impl for broker distribution and tests 2022-09-28 14:01:54 -04:00
artemis-cli ARTEMIS-4020: restore some gates I had stashed changes to undo removals for 2022-10-10 09:55:03 +01:00
artemis-commons ARTEMIS-4042 - read sensitive string codec env var if system property is not set 2022-10-13 11:20:01 -05:00
artemis-core-client ARTEMIS-4035 all consumers of federated queue drop if only one consumer drops 2022-10-13 10:36:38 -05:00
artemis-core-client-all ARTEMIS-4048: stop -all client modules needlessly grabbing their own -SNAPSHOT sources during build 2022-10-13 13:06:09 +01:00
artemis-core-client-osgi ARTEMIS-4020: switch to using SLF4J API for logging, use Log4J 2 as impl for broker distribution and tests 2022-09-28 14:01:54 -04:00
artemis-distribution NO-JIRA use default GC for 'home' script 2022-10-05 11:41:32 -05:00
artemis-docker NO-JIRA small Docker clean-ups/fixes 2022-09-19 09:58:09 -05:00
artemis-dto ARTEMIS-4020: switch to using SLF4J API for logging, use Log4J 2 as impl for broker distribution and tests 2022-09-28 14:01:54 -04:00
artemis-features ARTEMIS-4020: switch to using SLF4J API for logging, use Log4J 2 as impl for broker distribution and tests 2022-09-28 14:01:54 -04:00
artemis-hawtio ARTEMIS-4022 add auto-delete queue attribute to management 2022-10-11 13:16:46 -04:00
artemis-jakarta-client ARTEMIS-4020: switch to using SLF4J API for logging, use Log4J 2 as impl for broker distribution and tests 2022-09-28 14:01:54 -04:00
artemis-jakarta-client-all ARTEMIS-4048: stop -all client modules needlessly grabbing their own -SNAPSHOT sources during build 2022-10-13 13:06:09 +01:00
artemis-jakarta-ra ARTEMIS-4020: switch to using SLF4J API for logging, use Log4J 2 as impl for broker distribution and tests 2022-09-28 14:01:54 -04:00
artemis-jakarta-server ARTEMIS-4020: switch to using SLF4J API for logging, use Log4J 2 as impl for broker distribution and tests 2022-09-28 14:01:54 -04:00
artemis-jakarta-service-extensions ARTEMIS-4020: switch to using SLF4J API for logging, use Log4J 2 as impl for broker distribution and tests 2022-09-28 14:01:54 -04:00
artemis-jdbc-store ARTEMIS-4041 Improve critical IO reporting 2022-10-12 10:50:33 -04:00
artemis-jms-client ARTEMIS-4020 Using a little trick to create the Loggers 2022-09-29 17:46:51 -04:00
artemis-jms-client-all ARTEMIS-4048: stop -all client modules needlessly grabbing their own -SNAPSHOT sources during build 2022-10-13 13:06:09 +01:00
artemis-jms-client-osgi ARTEMIS-4020: switch to using SLF4J API for logging, use Log4J 2 as impl for broker distribution and tests 2022-09-28 14:01:54 -04:00
artemis-jms-server ARTEMIS-4020: Remove string appends and various isXEnabled logger checks (add some where useful) 2022-10-07 15:40:53 -04:00
artemis-journal ARTEMIS-4041 Fixing NPE on SequentialFileFactory after the CriticalIO change 2022-10-12 17:03:13 -04:00
artemis-junit ARTEMIS-4020 Using a little trick to create the Loggers 2022-09-29 17:46:51 -04:00
artemis-log-annotation-processor ARTEMIS-4020 Adding check on %s or %d on log.processor 2022-09-28 16:43:27 -04:00
artemis-maven-plugin [maven-release-plugin] prepare for next development iteration 2022-09-21 13:00:47 -04:00
artemis-protocols NO-JIRA small tweak on javadoc 2022-10-11 15:42:43 -04:00
artemis-quorum-api [maven-release-plugin] prepare for next development iteration 2022-09-21 13:00:47 -04:00
artemis-quorum-ri ARTEMIS-4020: switch to using SLF4J API for logging, use Log4J 2 as impl for broker distribution and tests 2022-09-28 14:01:54 -04:00
artemis-ra ARTEMIS-4020: Remove string appends and various isXEnabled logger checks (add some where useful) 2022-10-07 15:40:53 -04:00
artemis-selector ARTEMIS-4020 Using a little trick to create the Loggers 2022-09-29 17:46:51 -04:00
artemis-server ARTEMIS-4035 all consumers of federated queue drop if only one consumer drops 2022-10-13 10:36:38 -05:00
artemis-server-osgi ARTEMIS-4020: switch to using SLF4J API for logging, use Log4J 2 as impl for broker distribution and tests 2022-09-28 14:01:54 -04:00
artemis-service-extensions ARTEMIS-4020: Remove string appends and various isXEnabled logger checks (add some where useful) 2022-10-07 15:40:53 -04:00
artemis-unit-test-support ARTEMIS-4020: Remove string appends and various isXEnabled logger checks (add some where useful) 2022-10-07 15:40:53 -04:00
artemis-web ARTEMIS-4020 Using a little trick to create the Loggers 2022-09-29 17:46:51 -04:00
artemis-website ARTEMIS-4020: switch to using SLF4J API for logging, use Log4J 2 as impl for broker distribution and tests 2022-09-28 14:01:54 -04:00
docs ARTEMIS-4042 - read sensitive string codec env var if system property is not set 2022-10-13 11:20:01 -05:00
etc ARTEMIS-3341 update checkstyle to latest + update code 2021-06-11 12:16:04 +01:00
examples ARTEMIS-4020: Remove string appends and various isXEnabled logger checks (add some where useful) 2022-10-07 15:40:53 -04:00
integration/activemq-spring-integration [maven-release-plugin] prepare for next development iteration 2022-09-21 13:00:47 -04:00
scripts ARTEMIS-3969 Removing Extra tests from the codebase 2022-09-02 13:04:53 -04:00
tests ARTEMIS-4035 all consumers of federated queue drop if only one consumer drops 2022-10-13 10:36:38 -05:00
.asf.yaml NO-JIRA disable merge and squash buttons on github 2020-11-16 10:30:07 -05:00
.gitignore NO-JIRA Adding vim .swp and .swo files into .gitignore 2021-08-09 14:21:39 -04:00
.project More name changes to activemq 2014-11-19 16:01:54 -05:00
.travis.yml ARTEMIS-4020: stop CI jobs trying to activate tests-CI logging config profile, it no longer exists 2022-09-30 14:56:19 +01:00
LICENSE ARTEMIS-565 Replace json.org with javax.json 2016-07-25 21:44:57 -04:00
NOTICE NO-JIRA Notice update to 2022 2022-01-06 15:31:01 -05:00
README.md ARTEMIS-3474 - replace whitelist with allowlist in management.xml 2021-09-16 17:19:02 -05:00
RELEASING.md NO-JIRA some extra cleanup on Releasing.md 2022-06-07 12:05:05 -04:00
artemis_doap.rdf Update vendor to ASF 2015-05-30 08:37:28 +02:00
pom.xml NO-JIRA restore commons-codec dependency; remove REST property 2022-10-11 11:10:11 -05:00

README.md

ActiveMQ Artemis

This file describes some minimum 'stuff one needs to know' to get started coding in this project.

Source

For details about the modifying the code, building the project, running tests, IDE integration, etc. see our Hacking Guide.

Build Status

Build Status: Build Status

Building the ASYNC IO library

ActiveMQ Artemis provides two journal persistence types, NIO (which uses the Java NIO libraries), and ASYNCIO which interacts with the linux kernel libaio library. The ASYNCIO journal type should be used where possible as it is far superior in terms of performance.

ActiveMQ Artemis does not ship with the Artemis Native ASYNCIO library in the source distribution. These need to be built prior to running "mvn install", to ensure that the ASYNCIO journal type is available in the resulting build. Don't worry if you don't want to use ASYNCIO or your system does not support libaio, ActiveMQ Artemis will check at runtime to see if the required libraries and system dependencies are available, if not it will default to using NIO.

To build the ActiveMQ Artemis ASYNCIO native libraries, please follow the instructions in the artemis-native/README.

Documentation

Our documentation is always in sync with our releases at the Apache ActiveMQ Artemis website.

Or you can also look at the current main version on github.

Examples

To run an example firstly make sure you have run

$ mvn -Prelease install

If the project version has already been released then this is unnecessary.

Each individual example can be run using this command from its corresponding directory:

$ mvn verify

If you wish to run groups of examples then use this command from a parent directory (e.g. examples/features/standard):

$ mvn -Pexamples verify

Recreating the examples

If you are trying to copy the examples somewhere else and modifying them. Consider asking Maven to explicitly list all the dependencies:

# if trying to modify the 'topic' example:
cd examples/jms/topic && mvn dependency:list

Open Web Application Security Project (OWASP) Report

If you wish to generate the report for CCV dependencies, you may run it with the -Powasp profile

$ mvn -Powasp verify

The output will be under ./target/dependency-check-report.html for each sub-module.

Bugs

Issues are tracked at https://issues.apache.org/jira/projects/ARTEMIS/