以下のようなのを maven.xml に作ればいい.
<?xml version="1.0"?>
<project xmlns:j="jelly:core">
<postGoal name="java:compile">
<j:forEach var="lib" items="${pom.artifacts}">
<j:set var="dep" value="${lib.dependency}"/>
<j:if test="${dep.getProperty('jar.manifest.classpath')=='true'}">
<j:if test="${dep.type =='jar'}">
<copy toDir="${maven.build.dir}" file="${lib.path}"/>
</j:if>
</j:if>
</j:forEach>
</postGoal>
</project>
postGoal か preGoal かは好きにすれば良いし,プロパティも jar.manifest.classpath でなくても良い.
こんな感じにすれば
maven jar
とするだけで後は
java -jar target/hogehoge-x.x.jar
で動く.
でも,よく考えたら,jar ゴールだと,意味合いが少し違う.
まぁいいや.
ref. [2004-08-28-4] (maven jar で作成される jar ファイルの manifest に Class-Path エントリを追加する)