We are now a github organisation. You are invited to participate. Starting with version 2 we are going to support only java 8 or higher. If you are looking for the older version you can find it in the 1.7 branch.
Embedded Process Util will provide a platform neutral way for running processes in unittests.
- its easy, much easier as installing right version by hand
- you can change version per test
We use http://www.apache.org/licenses/LICENSE-2.0
Stable (Maven Central Repository, Released: 11.01.2022 - wait 24hrs for maven central)
<dependency>
<groupId>de.flapdoodle.embed</groupId>
<artifactId>de.flapdoodle.embed.process</artifactId>
<version>3.1.6</version>
</dependency>
Snapshots (Repository http://oss.sonatype.org/content/repositories/snapshots)
<dependency>
<groupId>de.flapdoodle.embed</groupId>
<artifactId>de.flapdoodle.embed.process</artifactId>
<version>3.1.7-SNAPSHOT</version>
</dependency>
- Embedded MongoDB de.flapdoodle.embed.mongo
- Embedded Redis de.flapdoodle.de.embed.redis
- Embedded Memcached de.flapdoodle.embed.memcached
- Embedded node.js nodejs.embed.flapdoodle.de
- Embedded PostgreSQL ru.yandex.qatools.embed
- Embedded MySQL com.wix.mysql
- Embedded Consul com.github.golovnin.embedded.consul
- Embedded Vault com.github.golovnin.embedded.vault
- Embedded InfluxDB io.apisense.embed.influx
- Embedded Cassandra com.github.nosan.embedded.cassandra
- dependency updates
- executable name collision fix
- dependency updates
- spring boot api fix
- de.flapdoodle.os upgrade
- jdk17 support
- more cleanup
- use de.flapdoodle.os for os detection
- better free server port detection
- use builder pattern for data classes (immutables.org)
- failed build on jdk8 (fixed)
- big refactoring, using immutables.org instead of hand made builder pattern
- initialise logger with getClass
- added stop timeout config
- Force Files.DeleteDirVisitor instantiation to avoid NCDFE (#85)
- Moved DeleteDirVisitor instance to Files, so it's loaded before shutdown hook starts and avoids NoClassDefFoundError.
- Make pid method detection more resilient
- Remove dependency on Apache Commons IO in favour of Java NIO.2 file
- Refactor to use NIO.2 file
- Don't add several shutdown hooks for process/executable combination
- dep version update, lic header in tests
- [jdk9] java.lang.Process#getPid renamed to pid
- bugfix for wrong path of executable
- java 8
- starter accepts custom distribution
- processId is of type long
- major refactoring, api changes
- fixed NPE when getting the next entry from a Zip Archive
- jdk9 support thanks to https://github.com/gunnarmorling
- changed logging to slf4j
- bugfixes in CachedArtifactStore
- ILibraryStore now uses Distribution instead of Platform
- Artifact is now a valid OSGi bundle - thanks to https://github.com/bertramn
- proxy support
- improved error logging
- detect executable creation collision
- minor api change
- write pid file for every executable
- artifact store refactoring to support extraction of library files
- solaris detection fixed
- solaris support added
- fixed daemon thread problem
- fixed multiple stop calls problem
- added more builder for configurations
- added download timeout config
- generic process builder (download and start packages)
- minor improvments
- better network ipv6 detection error message
- major api changes, easier configuration
- fixed NPE on process start
- support sub dirs in temp file creation (thanks to matthewadams)
- fixed NPE on process start
- fixed some shutdown race conditions
- removed File.deleteOnExit
- shutdown hock refactoring
- you can change temp dir with code or system property "de.flapdoodle.embed.io.tmpdir"
- "archive type" exe supported
- creating subdirs if needed
- initial cut out from Embedded MongoDB Project
NOT DOCUMENTED