Yes it is.
I have a quick example here with Ant, if you're using NetBeans: in the build.xml of your project, add this target and modify the naming as you wish.
This will merge all jars in your "dist/lib" folder with the output jar of your project and put them in the "merged" folder.
You can easily adapt this to suit your need.
Then you only need to right-click the build.xml file, "run target", "other targets", click "merged".
<target name="merged" depends="jar">
<property name="name" value="yourMergedJar"/>
<property name="dir" value="merged"/>
<property name="jar" value="${dir}/${name}.jar"/>
<echo message="Packaging ${application.title} into a single JAR at ${jar}"/>
<delete dir="${dir}"/>
<mkdir dir="${dir}"/>
<jar destfile="${dir}/temp.jar" filesetmanifest="skip">
<zipgroupfileset dir="dist" includes="*.jar"/>
<zipgroupfileset dir="dist/lib" includes="*.jar"/>
<manifest>
<attribute name="Main-Class" value="${main.class}"/>
</manifest>
</jar>
<zip destfile="${jar}">
<zipfileset src="${dir}/temp.jar"
excludes="META-INF/*.SF, META-INF/*.DSA, META-INF/*.RSA"/>
</zip>
<delete file="${dir}/temp.jar"/>
</target>
Edit
As other members say, you can do this in any IDE (with Ant or Maven) or even manually, as jars are basically zip files.