Maven plugin wrapper around Debian utilities for building .deb
packages.
Use Maven plugins to copy resources and dependencies into
${project.build.directory}/deb
. Everything in that directory will be
included in the package. For example, you might include a directory structure
like this:
deb
usr
bin
hello-world.sh
share
hello-world
data.txt
etc
hello-world
config.ini
Then add a build plugin execution as follows:
<plugin>
<groupId>com.github.mike10004</groupId>
<artifactId>debian-maven-plugin</artifactId>
<version>3.2</version>
<executions>
<execution>
<id>build-deb</id>
<phase>package</phase>
<goals>
<goal>package</goal>
</goals>
<configuration>
<packageName>hello-world</packageName>
<packageTitle>Hello World</packageTitle>
<packageRevision>1</packageRevision>
<projectUrl>https://example.com/</projectUrl>
<projectOrganization>Unorganized Developers</projectOrganization>
<maintainerName>Jane Doe</maintainerName>
<maintainerEmail>jane@doe.com</maintainerEmail>
<packageDependencies>
<package>default-jre-headless</package>
</packageDependencies>
</configuration>
</execution>
</executions>
</plugin>
See the projects under the debian-maven-plugin-examples
directory.
- add support for links files, emulating dh_link functionality from debuild
- parse symbolic links in output of
dpkg-deb --contents
- resolve package-privateness of exceptions thrown by analyst
- remove support for automatic detection of included artifacts
- support arbitrary packaging files (e.g.
postinst
) - support custom
dpkg-deb --build
arguments and environment variables
- avoid printing messages from executed processes at the warn level in build
log; use
<processExecutionMode>legacy</processExecutionMode>
if you liked the old behavior
- Code forked from https://sourceforge.net/projects/debian-maven/ by wowtor