Package Details: activemq 5.15.10-1

Git Clone URL: https://aur.archlinux.org/activemq.git (read-only)
Package Base: activemq
Description: Popular and powerful open source messaging and Integration Patterns provider
Upstream URL: http://activemq.apache.org
Licenses: Apache 2.0
Submitter: 4le34n
Maintainer: 4le34n
Last Packager: 4le34n
Votes: 4
Popularity: 0.009330
First Submitted: 2017-07-17 03:13
Last Updated: 2019-10-21 03:36

Latest Comments

1 2 Next › Last »

3ocene commented on 2019-10-31 18:01

The service file seems to be looking in the wrong place for the executable. I get the following error when starting the service:

activemq.service: Failed to execute command: No such file or directory
activemq.service: Failed at step EXEC spawning /opt/activemq/bin/activemq: No such file or directory

Digging in a little bit, I see an executable at the following paths

/opt/activemq/current/bin/activemq
/opt/activemq/apache-activemq-5.15.10/bin/activemq

current is a symlink to apache-activemq-5.15.10 so this is the same executable

4le34n commented on 2019-10-21 04:18

Updated

dark_barker commented on 2019-10-15 12:18

The current service-file is broken(?). The command in ExecStart is blocking (/usr/bin/java -jar /opt/activemq/bin/activemq.jar start). As a result, the service does not start by timeout:

# systemctl start activemq
Job for activemq.service failed because a timeout was exceeded.

in status/journalctl:

activemq.service: start operation timed out. Terminating.
...
activemq.service: Control process exited, code=exited, status=143/n/a
activemq.service: Failed with result 'timeout'.

Anonymous comment on 2019-02-28 16:03

Could you perhaps also add the files in /opt/activemq/conf to the backup field of the PKGBUILD, to avoid changes in activemq.xml being overwritten on update?

Anonymous comment on 2019-02-28 09:05

Thanks for the update.

I think the current service file isn't right, tho: The type's still forking, but java -jar activemq.jar doesn't fork, nor does it write a PID file. As far as I understand both of these things come from the service wrapper used by the shell script (which exists to add all those service things like PID files and forking to Java apps). If you don't use this wrapper I think you have to use simple as type, and then systemd handles the forking and stuff itself. The PIDFile option isn't used in this case. The service file would look like this then:

[Unit]
Description=Messaging and Integration Patterns provider
After=network.target

[Service]
Type=simple
ExecStart=/usr/bin/java -jar /opt/activemq/bin/activemq.jar start

[Install]
WantedBy=multi-user.target

To use the forking type you need to use the activemq shell script which forks; in this case PIDFile must point to the actual PID file written by activemq (somewhere under /opt/activemq…/data I think).

Anonymous comment on 2019-02-27 13:04

Please remove >/dev/null 2>&1 from ExecStart in service. ExecStart is no shell command, so the redirection has no effect (check systemctl status); the service starts only by coincidence, because activemq seems to ignore excess arguments.

The systemd.service manpage also recommends to set PIDFile for forking daemons, but why not switch to simple and use console instead of start, and thus let systemd handle all the forking? You could then even use just java -jar /opt/activemq/bin/activemq.jar start as ExecStart, which would have the added benefit of making activemq's output appear in systemctl status activemq and journalctl.

4le34n commented on 2018-07-24 05:36

1. Ssruno wrote: "Doing a: ps aux | grep activemq ..."

   Can not reproduce:

sh-4.4# ps aux | grep activemq root 14362 0.0 0.0 18416 1832 ? Sl 16:12 0:00 /opt/activemq/bin/linux-x86-64/wrapper /opt/activemq/bin/linux-x86-64/wrapper.conf wrapper.syslog.ident=ActiveMQ wrapper.pidfile=/opt/activemq/bin/linux-x86-64/./ActiveMQ.pid wrapper.daemonize=TRUE wrapper.lockfile=/var/lock/subsys/ActiveMQ root 14366 4.4 3.9 4584456 299460 ? Sl 16:12 0:16 java -Dactivemq.home=../.. -Dactivemq.base=../.. -Djavax.net.ssl.keyStorePassword=password -Djavax.net.ssl.trustStorePassword=password -Djavax.net.ssl.keyStore=../../conf/broker.ks -Djavax.net.ssl.trustStore=../../conf/broker.ts -Dcom.sun.management.jmxremote -Dorg.apache.activemq.UseDedicatedTaskRunner=true -Djava.util.logging.config.file=logging.properties -Dactivemq.conf=../../conf -Dactivemq.data=../../data -Djava.security.auth.login.config=../../conf/login.config -Xmx1024m -Djava.library.path=../../bin/linux-x86-64/ -classpath ../../bin/wrapper.jar:../../bin/activemq.jar -Dwrapper.key=lnFjVqvm1yxySrc_ -Dwrapper.port=32000 -Dwrapper.jvm.port.min=31000 -Dwrapper.jvm.port.max=31999 -Dwrapper.pid=14362 -Dwrapper.version=3.2.3 -Dwrapper.native_library=wrapper -Dwrapper.service=TRUE -Dwrapper.cpu.timeout=10 -Dwrapper.jvmid=1 org.tanukisoftware.wrapper.WrapperSimpleApp org.apache.activemq.console.Main start

Try running with the default settings. Must earn properly. Then make further adjustments. Perhaps you need to reboot after installation. Or run the command: source /etc/profile.d/activemq.sh. And then run the service activemq.

2. Ssruno wrote: "PS: The <http://localhost:8161/demo/> doesn't work either"

Replace symbol link /usr/share/webapps/activemq with /usr/share/webapps/activemq-demo. And then the demo will work.

Ssruno commented on 2018-07-23 19:12

Doing a: ps aux | grep activemq

We can see that those paths are being formed with a double slash.

root 22069 2.9 1.9 4588012 306416 pts/1 Sl+ 14:54 0:14 /usr/bin/java -Xms64M -Xmx1G -Djava.util.logging.config.file=logging.properties -Djava.security.auth.login.config=/opt/activemq//conf/login.config -Dcom.sun.management.jmxremote -Djava.awt.headless=true -Djava.io.tmpdir=/opt/activemq//tmp -Dactivemq.classpath=/opt/activemq//conf:/opt/activemq//../lib/: -Dactivemq.home=/opt/activemq/ -Dactivemq.base=/opt/activemq/ -Dactivemq.conf=/opt/activemq//conf -Dactivemq.data=/opt/activemq//data -jar /opt/activemq//bin/activemq.jar start

Ssruno commented on 2018-07-23 18:59

Hi 4le34n, thanks for maintaining this package.

Just after finishing the installation I try to get the service up:

/opt/activemq/bin/activemq console

Accessing http://localhost:8161/admin/ doesn't work, in order to navigate it, I have to:

sudo ln -s /usr/share/webapps/activemq /opt/activemq/webapps

Maybe this tweak can be added for the next release.

PS: The http://localhost:8161/demo/ doesn't work either

sprooose commented on 2017-12-12 15:16

Is the web management console included in this package? I can't see that it has started in the startup trace.