Это убивало меня весь день. Я работаю над android/java в затмении.Maven 3 «uber jar» как встроить банку в банку?
Это то, что я хочу сделать
Я хочу, чтобы вставить одну из моих библиотек - DatabaseLibrary
в другой из моих библиотек - LogicLibrary
Кардинально - без подвергая любой из методов в DatabaseLibrary третьей стороне, имеющей доступ к LogicLibrary.
Я попытался включить его с помощью Proguard-Maven-плагин как этот
<configuration>
<assembly>
<inclusions>
<inclusion>
<groupId>xxx</groupId><artifactId>DatabaseLibrary</artifactId><library>true</library>
</inclusion>
</inclusions>
</assembly>
Однако это включает в себя все методов в DatabaseLibrary и подвергают их на 3-й партии.
Я хочу, чтобы моя LogicLibrary могла звонить с помощью DatabaseLibrary без участия третьей стороны.
Я искал по всему Интернету, и кажется, что что-то называемое uber jar - это то, что мне нужно сделать. Однако я попробовал несколько методов, такие как Maven-сборка-плагин, упомянутых здесь https://stackoverflow.com/a/1834905/1312937
maven embed dependency artifact code in jar
Однако я не получил не где с этим, похоже, это Maven 2 ответа так может быть, есть что-то другое мне нужно сделать для maven 3?
Может ли кто-нибудь сказать мне, если uberjar является правильным способом для меня достичь моих целей? Если есть альтернативные образцы, пожалуйста, дайте мне знать, я не привязан к maven.
Спасибо, похоже, это то, что я могу сделать. Я дам вам очки за то, что они были полезны, благодаря тому, что другие респонденты тоже будут вам полезны! –