由提交storm项目jar包引发对jar的原理的探索

时间:2024-03-24 08:05:55
序:在开发storm项目时,提交项目jar包当把依赖的第三方jar包都打进去提交storm集群启动时报了发现多个同名的文件错误由此开始了一段对jar包的深刻理解之路。
java.lang.RuntimeException: Found multiple defaults.yaml resources.
You're probably bundling the Storm jars with your topology jar.
[jar:file:/home/hadoop/app/storm/lib/storm-core-0.9.6.jar!/defaults.yaml,
jar:file:/home/hadoop/stormApi-wordcount-1.0-SNAPSHOT-jar-with-dependencies.jar!/defaults.yaml]

这里说明stom集群环境中有storm的jar包,我们提交的jar包里面也包含storm的jar包,在读取配置文件时,发现有一样的文件冲突了导致启动错误。

新浪微博:intsmaze刘洋洋哥

由提交storm项目jar包引发对jar的原理的探索

eclipse打jar包
代码如下:
package cn.intsmaze;
public class A {
public static void main(String[] args) {
System.out.println(args[0]);
System.out.println("java工程打jar包");
}
} package cn.intsmaze;
import java.util.HashMap;
import java.util.Map;
import redis.clients.jedis.Jedis;
public class demo {
public static void main(String[] args)
{
System.out.println("java工程调用第三方jar包");
Jedis jedis = new Jedis("localhost", 6379);
Map map=new HashMap();
map.put("11", "1");
d.jedis.hmset("33", map);
d.jedis.close();
}
}
上面的代码的java工程如下:
aaarticlea/png;base64,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" alt="" />
使用eclipse把该工程打包成jar包:
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAhAAAABoCAIAAAAvjF5bAAAe30lEQVR4nO2de1QUV57H+7/5d/ec/cfds8lmNpNoHuSMUYYhZ7Oz6sQ4kzNjTJiMSTCYM9M7jjNxM4aooxOVKKCj0hFEEYmOiiAgEMT2HXyLkZcKBmkQmkdDv7AfdFNNN9z9o7qrqqtuVd1+N83ve76H03373lu3iq7fp+pWdf0UFhAIBAKBCKSI9QBAIBAIND0EwACBQCAQkWSBUZmhyKgM80IrMxTJOS1h7hQEAoFAEZVCoZAGAgADBAKBQBaLxaKwWFpykiWQECgwWnKSsQ245TMKGGIbJLaKz1GBQKC4VtinpAAYPMVnaI7PUYFAoLgWDxiVGQqvfBGdCwzhp7zCHOa1PxEq/csrM7h12biF7Z8RHeMqM9iPMfVbcpIV/H45S2cKuQGTfU2yCMKFYldcZDB88RfRkpPMVK7MoF9yhsrvC7sI7qolM8NVJOe0tOQkzyB+g0Cg4KXgxCzugT8TRBlgiH3KCzaEZxgKToimO8D2z+/BHwOC+ph2/iP0hVsJYPBI4792hAuVWnHMYPgDxmwHbyn7of9Q2a7EFsFbNc6oABggEIhMnMNQ7oEpe3jrAwb2U8zcUqBTUi05yb7lYJYu3rPoaP2b8keIi/L8MwyxtsQLFRu22GDkF2ERLIXX1vdWdBEi9UEgEIhYCvYoFH9lgQMM4afhBYbMYa5cNPevyQZzfgBNzmkJARgkCxUbtthgiBYRNDDYaS0ABggECkUKTozxmyKpzGDOO9gTENynLAZy+JGYKzlg4PsX60GkfktODh8CgikaNn5yJ3dwwMCsHeFCJVYcNxg/4bcDXRc/ar83YosQBwZMSYFAIDKxM1IWC/bqLeeiN/baLlvIiT9iM0qYmSzOUbb4tWPmY79y6Qvc+NkrzMCTMzLwZxi4tSNeKHbFRQeDa8DW4ECAQUNLTrIiIwO7YImL3rhRATBAIBCZ4NEg01QwpwQCgaItAMY0FQADBAJFWwCMaSoABggEirYAGCAQCAQiEgADBAKBQEQCYIBAIBCISAAMEAgEAhEJgAECgUAgIgEwQCAQCEQkRVaOCgyeyebtEjEfDxgcP+YDA4FAM1jCXSIrR9U00goGg+MCGJ7Jqcv3zQVntduqemLogrPay/fNnsmp6G8BUCREUdTAwMDw8LDZbH7CkcViof8yslqtNpvNYDAgAAYYLO64AEZ9k+FMi2lw1G2jUAw9OOo+02KqbzJEfwuAIiEABhgcXscFMHbWPjY7Js1OZHIgkwN16yz7j9bsLanYW1JRdLSm3+igy2kjhGZ/XIgQ4haGxWYnMjsmd9Y+jv4WAEVCAAwwOLyOC2Bsq+qxUsg45nVeUdnIUI9ZrzXp+zo72lT7jzEfGccQ8gGDWxguWym0raon+lsAFAnFMzAa1LlYxzwigMESjhQw9uTlkZiuvK2qxzKO9Hb0sM+8NTv/+4YvHd15ru7dzo4cw/W/Fe3YkLlpZ+amnVuz8x/2mZEPGHp7+G0ZB2AkjiIKDMJvuNiOd+nMTteEh+f2ulXADHA8O4LAGJMTFxhPxtGIDW3NzrfpLiPrNYw5ooExYsO5SqlIVjWyJZqsZIVipXqEV8LIrzJ6AsBIIEUaGNhvNUVRLpfL6XTS33CxHe983S4hMLoub+oImBkFyxTvfBWb8FGwTJG0tjH2UQwcNUcWGHM+3v3Cx3te+HjPCx/vnrNy1+yMnbNX5Dz/wbbnlm/hAWPUiXQ2tG5zARq9iDdCv/7iJF2fBobOhnOVUpGsusm8bVXNS06dp1AeZ+totiYrPqzyvj2+UqFYqWaajzoBGIkjMWDY7XaHw2G320MHRvXp81zfaWorKbuyLruyu3fQ4XBIAONMbR7l8tAed7kpl2fc5elrzOu6vKm97g/q2j3E+zAAAxw9BwOMhoaG3Nxc6ToMMDY3Dm68rs38tueTs4/+UPMgo6xpecmNZ3+ziQcMswMNWtDaTSXI8A3ePk4wLwYtOFcqFcmqG763N3JSX83RHMtQfFDJ1NFsSea8rVQqMtRMc7MDgJE4wgLDZrM5HI6XX36Zy4xQgHG3tYN2U9tD86j1vT+WLHp/7/mGNqfTKQGM2lN7HZTbQbnnvLl69dYix7hn9daiOW+udlAeJ+Wpq95LvA9HGRh1a+cplp1gFg3AmFkOGBiXL19+8cUXn3vuOelqXmCs/PvGa32vlHe8cuJB0vG2lw/ffbHo5tK9F/9z2ec8YBjHkPYJWv3ZP9DQCdqTA6UXa45v2Va+Zu2xNWuPIYQqr30/++PC2R8XHr5wDyGkfYJzhVIxX3XV+1azeX7q5hZhoeL9Cvb1q9kaprlxDICROBICg6bFU089NX/+/A8++IBhRujAaL73sK9fV3Ou9efv7/39utLh4RHpKanKk4V2p9vunMg+UDnnzdU2p3vOm6uzD1TanW67032qch/xPgzAAEfPgQGDpsVvf/tbQmDM/mjHZxe7ko7fe/loy0sld17cf23OVxcXZ3/zH299wgOG3o56R1G68gjSHkLaQ+NdJX/LKs+v7fhGO8mY2//vPj3VO4owrlAq5quu8F+rlytSv2im62i+mM9cwWAKvdbbARiJIx4waFo888wzS5Ys2bBhw65du7Kzs2lmhAKMjkc9vf1DHZ3dNvvYik//sfjDgkvXH2q6u6WBUVpWZBlzW8bclrEJGhVz3lxtGZugS8rLD4jvtAXLfF/fpKw6P2A0Zib5PvLF9NaaLKbMW01QQjOA7ZZpK+iQraOYl1lDAyPrHW9JekHMwxk40g4AGAwtli9fTgiM59O3//l0+0tf33mx6MYL+d/O3n32R9urX99w4qk3fs8Dxogd9ZgQQshw57C2NM1w5zBCqOJ7l9DF100r/6K+1WHtMSGMy5WK+apvTajHhEpWKOZu0/TwX2v+Nl+xvNxbqFih5jYfAWAkkHjAcDgcaWlp69atKykpqa6uPnv2bENDg1qtdjgcQQPj5p3mO609x6obzaOjF652LFlR+LvPSymK6uh4KA2Mw8cOmW0TtGlaZB+oNNtcdMnR48UiDQuWeTnBLfHF/fTMGrrwxDteGDRmJvHOP4QlI3Vr57E4YdtiO+SfYfg40ZiZBGcbM8CkwODSghwYz72/VXny7gsFDbP3nHsup/bZzWU/XHd43uqD//azD3nA0FlRlxEhhLSlacjzQFuahhA62jTGc/45/W/+fOHaA1uXEWF9cVuqYoW6y4i6jOr3FDwpDxlRl1Gzcb7ivXLE1PG9Rl1GpLMCMBJH2DMMoUI5w3jcp/1kc8XiDwta2/v/d33ZLzP2n23ocDqd3T2PpYFx8MgRg8VFmznDMFgm6JKvjx7GNzzxjmKeL4h77TclJTh7oM8JuKFcWMJlAP+tyOkI0xXTT93aeQCMxDcpMHJzc5/jKDs7W3pfpXenZ9M2ppdce37H6We3Vvxw/ZGn1xQ+tSrvpYy8Wa+l8YAxaEEIIcOVXVTnlqWzFVTnFsOV3Qihg1csjHNO9v/P+6e/bbN16pGINX+dp/jxl5pOPeosUyoUyoPsR+r3FIr3yrx13ivzlp//MlUxT3XeV23QAsBIHEXhttrm1nuPtfo30/ct+ajwlxn7V649TrkmxsbGtP390sDYV3J8eNQ1POqiUTE8StHYoAsPfH0U31ACGI2ZSczJB/80gj6H4EPCVyICDHyHAIwZ7cjeVvufb2em7T33Vnb1or8ef+2Torm/z3/po7wfLd8lBMaABSGEtKVpDDDok4y5S8+9uvTsq2+fe235hbeU5253jT/UI6yL0umJVDX71vfav0SzYZ7iN2VMuWbDPLbmAAAjgRQFYNxq/M5gsvy96OIvPtr/1soDtefv0T/C0Ol00sBQHSwbNFFDJhd9l9SgyUXfJTVopgZNVMGhUr/67IRPwTL2GkPBWu41DA5LarKSmCmptd7KLAb4JTQ8fFcg2LbYDgEYM9uRBcYzv/r06SV//PdFK//19eWzXkub9VrarNS0WalpQmD0jyLt6fXmKxlU55b7Ja9TnVvMDRn9p9e3D6Noun8UgJE4igIwvrvb1NWl6e3X7yq6oCq5bLM7TWaz0WjS6w3SwNi9v6LfQPUbKK2B6jdS/YbxfuO41kBpjeNaA5VXVO5Xn3uFgL0QzUw6saHcezE8/R3mDOOrdN+Ukg8JgpK6tfMUy9J9167ZUxN8h95JKuaidyNTGYCR+I6XX3r3jSJtadrk4yzztc+WzlaYr3022ZOlLU27r0PRdB8AI4EUtV96OxwOl8tFUZTD4eB9w8V2vNzCql79OO0+/XiffrxXTzFvdxVWRDEK8KakwGBRx8uzpHpH0a3tSVMDhZZO1ZmCZZZOFeovvLU96Z4ORdO9AIwEUjw/Syq7oDo7v3p7fnV2QfX2AvpvDV2YnV+9o6AqilEAgAEmdVw8rXbP6b7OEc/Q7SO3tidxPXT7SNsQipof6FDniGfP6b7obwFQJBTPT6uNJwMwwKSOC2CcbTHW3jVrDJP43+JFyxrDZO1d85lmSKCUIAJggMHhdVwAw+WePH3XsLP2cWxTtO6sfXz6rsHlnpQfMUhOU48eTVmtsR0DAAMMDq/jAhighNGUTjdZXz959WqsB4IQAAMMDrcBGKDwaLK52ZOX5ykujvVAWAEwwODwGoABCklTVutkff1EerqnuDjmc1A8ATDA4PAagAEKUlM6nWfPnolFi9xZWVM6XayHgxEAAwwOr+MOGAH9gINQytfnRmi0M1OTzc3uzz93p6S4V62KT1TQimdgNKhzsY55RACDJRyPwCBJlYxte/3vyYwRQlmLZwkd3bVJKE1ZrZ7y8omlS2lUTDY3x3pEMornH+5dOrNTmNO7PeCE3mBwVB0NYNy8eXNsbIywMmGqZGHDU396lvt2oPV81uJZE84LI7cKdqW/Qb8AYASnKZ3OnZU1sWiROyVlYunSyfr6WI+ISFF7NIjEkY3Yjne+bpcQGF2XN3VElBmQtQIcmqMBjBMnTpSXl5tMJpLKhKmSea2ub0+mRg5QIwcsnaqRtty+K+uf9N7KWjxr5FbB/cotytfn0i8AGIFq8soV96pV7pQUd0rKxMKF0wUVtKIADNkjG7Ed70xtHuXy0B53uSmXZ9zl6WvM67q8qb3uD+raPRHZ4QEY4NAcJWAYDIbi4uLBwUHZyoSpknmtLm2fS1kaud7w659lLZ61K/0N5etzae9KfyNr8Szs9QyNKpVJsqT2FSjVaqVCoUhVaRBCSK301fAWJLSmrFZPcbF39iklZWLhwji8CUpW0QGG9JGN2I5Xe2qvg3I7KDf9eHPHuId+vLmD8jgpT1313piHhqaRVnhqCJjnKAEDIWQymVQqVVdXl3RlwlTJvFaXNs+lRmq59jh7mSkp5etzpaakaDoIihRsoVo5MziBEJp69MidlUVzwuusrGmHClrRBIbYkY3Yjld5stDudNud3vysNqebTqBkd7rtTvepyn0xDw1NI60ADDDP0QMGQmh4eHjr1q2jo6MSlQlTJQsbcpOBn/rLKxIWNKXPHrhE8GeIWjkTcDFZX8/MPnmdmRnPN0HJKjrAkD6yEdvxSsuKLGNuy5jbMjbBpGi1jE3QJeXlB0Qa0hGcTrOqULDJlDjl3qxHbB02xYVfJj62AidJOLcwk+2Bn+YPPEMdPWCYzWbyMwzZVMnChtxk4FTfAaxH2nJxwKBFn1XQZJhBwJjS6TzFxfQFbdbT4SYoWUUBGLJHNmI73uFjh8y2Cdo0LbIPVJptLrrk6PFikYZ0UiNf0D/xjsIve5IfDFgMMNVYYPByH9Hg8W/l9xEY3NoUNWAYjcaArmHIpkrmtRImA6c6c3kWpYVGpVL7Xnk5wZulUivZ+Sm1KlHYMdnczJ99om+Cio8nQYWuKABD9shGbMc7eOSIweKizZxhGCwTdMnXRw+LNBTJv80r56f+5qbp9qVf9VdSVh0uYTgAA+znOL1LSjZVMq+VMBk41baFa8lzC84VbS8WBJc12MvivKsd01KT9fUTH36IQcW0uglKVlEAhuyRjdiOt6/k+PCoa3jURaNieJSisUEXHvj6qEjDoIGRtLbRHxjCWSYABljOcfo7DNlUydwm2GTgVBtraVrMHLEP8+ChYnreBCWrKABD9shGbMdTHSwbNFFDJhd9l9SgyUXfJTVopgZNVMGhUr/67O2wdWvnsdm5a7KSuFNSnMgumJKiSeA3JcXW/ypdWFiwNqsOgAHmOa5/6S2RKpnbBJsM/Gvl81zHanXiROzDPAT25OUlHipoRQEYskc2Yjve7v0V/Qaq30BpDVS/keo3jPcbx7UGSmsc1xqovKJyv/r+wFiWzkwoMRcthJFd7qJ3Y2YS/8o5t9BbrSYrCS56gxnHIzACfZYUNhl4rMYfV/I+Stb3cwq+4/WhgeFS1H7pLXFkI7bj5RZW9erHaffpx/v04716inm7q7BCpGFoh/x+d0mBwQE77oARhLDJwGM9qBiL+zAPjBPiJihZxfOzpLILqrPzq7fnV2cXVG8voP/W0IXZ+dU7CqpEGoYEjJqsJDhXAIfiRAAGiCvuwzyEnkhPnwmooBXPT6sN1sECw3tbFJxegEMyACNB5PcoWSwqEu4mKFklIjDA4FgagDHthXmYB+4mqPAuVGJxhNXEmtCtQhkY8zpcwHCnpEjvRcIKdIlYQ9kOA1oWUy7tUMKE2AoGOgbZkRCOM8TViWfzVi2gNQ3LthVW5r4GYExjYR7mIbwJiuB+2eDCOrc5yWi51aSbhNJhWIDhTkmRAAZJ9GRKxAJr0DttELEyLOEVuxEkehaLOOEaamAr1ZJrT1mjCXkjhOqWXHvKu4MtAW9nbDUhgAmBQYJwsWEAMKafeI+SFXVoN0GJRe2g6UIIjIB6FnIiLMCgIYEFhuyRteyuK7uCYjs5SVCQ3fMDtdgIZccT0EYj6Y3EoisyTYCBPfKQZgOvUGxTkPybJMoBGNNS2Id5YLxq1dSjRyEuSwIYAZUEBwDCUXE5IXSIU1IMM8iDo2wgkw3fEsAIID4SLy5oBx3ZA92A0osmXcFYAYNHCElgSFBZYsXFyEH4zwr03+H2P/mOPTAikdM7StKoUiP2kELswzywqAjLTVASgZv+iBvuxUp4XZEXSgwAWy7WMDhgyG9k8ckZabSQRLqwhcjw0QIbyGSJKFsotg0lxi+shm2I8TQBBm+bS1cQbgHpzSjxvZVYEM9xd4YhlvlS4pfetJzmge/2rbix81c3dv7qu30rnOaBaA89AsDAP0oW5zDeBMXEffL6JJ/KAoOkT9mBhQ4M2bukZHdIkigW6EEfeYWAqgXalew6Bg0MMRhIxzixntsL32X3jvVHGGBo1nP3Gk7srlvDli/PbRcrpCN+Xa7dW85CCNfzEZPfTrpGQzcvXIMZANkkHm+LiR2+kP8fhU2wrGI+itNnSfEyX1afPl9Tf6H+/OWL314VA8bVnb8eN2kmx42T40Zrf/PtghVhXQmuuI8mxGRfCoskHubBR8XChZ6ysnAt1+1/iiARuBmuuAVnGNiaYhYbg8TwhAMQc6SBwQ1h5MAg+YgbDiRWMIhFBOpAgSFtscokgYww8LUXvsuJxUdMy3PbfcBobznP1G8vfNcb8Vty7Skppjom9MsU+ohyfnA5SxfxnnlnGJwmTDW57Sz2P8VuIhLYSHzrxJbeFDVghJjT+25rR9uDzo7Obk1P79XrN7HAcJp6r2//ie7mxif3s+33t1maNusuZd4rTrub/9bd/LfaDn/kGiNaOpkiCAyZh3kIURHWhwZiOSERvoPun7warwnJW6YwOmcYAe3h5GEx0IggHUpCMTbik4xEdgzSEZBkS+LaHjGlpNgLz/t9ip2SYqI5dqaIpLBujRs7xSTWs+RbMbJKfLV4hxe8fxn2bUBfnpgBI5Sc3vc7ujo1j3t6tf0Dg7duN2KBcWv3GyNtxZaeCltvla23yva40qKpeKI5ae2ttfbWmh4e+27fMpKhCpJ7I0E2b/atIjU1VcH5jGWHWqlIVamUghzgTNtUlYpNykQv9Okf/GD30790Esw+eR3uJ0ERhmnC4QVRGbto8oGh8AFDdsCEO1gQJXEIDPKREP67pQcpsY5E/xHRQO8FhvTcEXNKgS+UjPiYngMEhvRXAgsM7BdSenuSf5+Fr+M3p3fzve/b2h+1f6/R9PRq+weGdLqRkZGm5mYsMC5+8SqlV0v44hevyg8Uc7bATbaHTa/Eee0HDB9x2Asb3CxMGlUqm9wv85/f08v9nMLPEcicGlDUJikPYhGI4PeAEp0I6wiBQXcV3jMMCVpgdznpkCcBDNkFSQxSrA55V9hYL9FcmnyyhSQbE18iAQz/GSH8fFFKCneaiF8oFvHFeg4HMCS+DBJfLfJNTbIg5kWc5vSuO3upo7O7q7u3TzswMjJiMpnMZrPZbG4Xyel9duOPqcFK2o7eUs3ZT787tPT6Vwuuf7XgumrBddWCb3N/emPvkht7l9zY+wvxhQuSe3NOJzinCyTA4GLGd2bCvSKuVv7TT3eMlJdPLF0cACoi89BAEjy4AznJwC4CG9wDHaEYMMTIEWlgkARcEssCI1ByRAIYwkVLRBySrUSCScJwxrH4lFTdGgEMsGjhnmf4F2KmpNZouC94PUcXGBLNpx8wAsrpfe5iQ0+vdnBoyGAwPHnyxOaTWE7vunWvUH1HqL4jo/fybhYu0bd8RQ1/Qw3XUcN11MhpaqSeGjlD6dWjnUcv7/iZ3Hg5yb3x2bxDBcaUTudWvmn4yX+RoyLKmVOlA7owTBPCQIIowQ3MLbiLl7cg4ZRUeIGBjXqhEAXbOXb/lw73hMuVrSZGCCxFghsk4SqT96xZzz1L4Fz05l/H9k0c1a1hAcNclsAW+oV4DpnEeubRKwLAYLZDhIDBK4zTnN6XGq4NDA7p9Xqz2Wyz2eiUAxI5vavXvkx17zM3bW/YvcDclkdpj1Lao5T2GNV/nOovpfpPUANl5vsFF3b+3NTbwl8kM2uESe7NnUdCaiU7zSQNjJJ/Saktv+orZaekSrLlH+bBR8XChdF/aGDYgcHjRHDkIKQFI+yUVIR+h4ENr4RBWawmSegk7CroOiSrKcYz3lvZaiTbDduzsJrf5QTObbXc221NhUy89rv/1Rf3cYXsDJWvZ98SRXrm3pvru602wIve2M2O3XQSzUMEBlMSp3dJXbtxi6aFxWIZGxtz+iSW0/vk/71kur3xYu5/m77LojT5lCaf0hRQ3fuo7kKqez/Vc8DUlKPevsD4GDefw/n9hCC5N/46uLeMmZ/yv+g99ajEnZJiX7BoymqlgVHYavUUF0+8tSBQVMQqcyohMITlgYKBkBnCTrBLEZoLDJoWkbitViySksdl2dBJgi7p6EwYLGQ7xMYpwkXLrmNAITLQVQ6DCR4GFbSlv1cB/UNJtqTEF8ntf/oidGSBEVxO7/b2Do2mu0+r1Q0PG4xGo8kkltMbIVT6pxfObP6J8WYm1fEl1bGN6thOPcymHuZQD3Op73cYbv61ftsiQ0808kBMWa0Tb7/t3bLr1sk+SlbUWVmJmjk1aoLHm4PD7EgCY1o4QX7p3Vyz+9ifXqz47MeVn8+rWp98akNK9YaU6g0ppzaknNm2+M6JjY4nw9EZv3v16mDwwENFQmdOjZoAGOAwG4ARh8CYrs+SQsijkr+FX8ozI3Nq1ATAAIPD67gDxvTV5NWrQaNiYulSQEXYBcAAg8NrAEZ4NPXoEckjAvGomGGZU6MmAAYYHF4DMMKgKat1YsWKgFERu5ughJIdbawHGIwAGGBweA3ACIPc69YFSov4QQUtt9xPpmMwppAFwACDw2sARqjylJcnwE1QAAwABhgsawBGSJpsbg7oJqjQM6dGSIk6JXX37t2qqqoifx08eJD+y6iioqKlpQWAAQZLG4ARvKaGhgK60D01NBTrIZNqmhKCJ4qiqqqqBgcHmScFOBwOh8NhNpuNRrPBYNTrDTrdcF+ftq3t/qlTpwAYYLC04w4YsfgdhlrJPrbc98xxgrRIgV7o9pw8GdZhh1OJeoaxf/9+BhU2m91itT55YhkYGOrr6+953NfV1XPvfvv1G7cfPOjYV7gPgAEGSzsegRH1nN7BAMP95ZeBXuieWBG5rLFh1jQlBE80MOizCrvdbrFYR0efmEzmnp6+R4+6H37/6MGDh413mq5evdnWdh+AAQbLGnJ6IxYYrCKVqTuelWCnF4gDjLGxMavVRtNCrzc+6uru6Oi8d6+9ufne7dt3r1y50dp6D4ABBss6Tp9WG92c3gAMhMKRUy/eBMAAg8NryOmN/KekuBkvMA87T2ABMAAYYLC0Iac3EgMGiwm/LEoJK+wvMBAAA4ABBvsMOb2R+BkGU2FGzFABMAAYYLC0Iac3AmDQAmAAMMBgaUNObyQ6JcVN253QvCC8LTjWwwxYAAwwOLyO07ukoprTW+wMQzmjrnknoAAYYHB4Hae/w5i+Ob1B8SMABhgcXifIL73jJ6c3KH4EwACDw+t4BMb0zekNiisBMMDg8DrugAEChUsADDA4vAZggBJWAAwwOLwGYIASVgAMMDi8Fu4d/w92I8x6h1uYIQAAAABJRU5ErkJggg==" alt="" />
选择这个jar包的入口类

aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAhYAAABKCAIAAABo9oohAAAJh0lEQVR4nO3dTU/jSB7H8XpLQcIH3ghwYX3KmUuE1FHfWJwbQdrTKH2nlXtaLVDvabXqmZVXu7O7WhHtaITQCAGjzjQPh4DUe/DTv1xVjinCJODvR5E6LrvKZZPUzy6jRk0AAPCiFt0BAMBLRYQAADwRIQAAT0QIAMATEQIA8ESEAAA8ESEAAE9ECADAExECAPBEhAAAPBEhAABPRAgAwBMRAgDw9NgIGYYqHM65D8NQBVE8l3bm3jerOAqUUhU7m9cRechOQhwF3n14St2l9SoPCli0PEKGoUpVDsNEyCSOgln7IUKWz6s8KGDRkggZhkVyxFFQMUA+dph2jbey/IVFiKO7z3FEHrxPQo1kfBaL2u9ydgN4YdRkMpnEUVB3xCNCiJD5WpKxe0m6Abww5l2IVMxuZSOiHKHMtaXCKH+vj6hDvXwYym2Lfljbr+ie6Fv6tEJrzyyzbWVvP99AFMkqczoiS4eSoc2cZnSVy4ks90+qvCO9/466SissDrDeT8daq3TexEEFYSgnniyh7DoDjj4XBzWrG0x5AbVlz0LSL1FpWMy/SPn3Lx+mXWtLX76adyHZnotvr7V9ydxX3rc4CrMVeTiabcy47tTbFyFb7y7E44hs3U4He9lwdbkZIbYfimNHIlptdbW9mAdYOnv2j4dRS54K46BsVy7yhDvOgK3P+kFVdYMIAWrTfiNL+00jeSWnXa+VL1uLtc5LRXO/rmmfbE7NvnfBsi9tnDEu6JMWZR2zpKL90kVs/Yms2kdk73bpBOaLrnIjQiq669qRs651hW0a1PnhMWuVI0S/mcjT1/wQOc6Aq8/2H6C1GwDqMn+pN7tssw89IkKqLz1TT4iQ6gvBigiJo0CbsZH7T0ZOWdMssbZfDJT+EVJ9RPZuP0OEzNxRVYRY76hmnj33aamKkHQjx2eofoQEUUyEAM8ie5yuzdfnw4Sc/NbnSZxri2E00r+4ulkDrr19ydyXJd7iKMjnMaLSOGWWGO1b5+I9I2TmEVm7Ld/WKrdPZGknyr2j2RNZlhi1/jKG6+PxuAiZxFEQhKH9lz0qzoCtz/UjhIksoLb0LkRMa1RNBs18ZC0KxffRdpUvyh3jkbV9SxOqPHqKFUEY5iOD9dFz5Q6sT5KdtxNPPiJrt+MoUGFodtRVbnucXj5R9vNT9F8byd2P06sixPXhsdQS582S5eaTHLkD2xlw9HlGhJQOnwgBauE/OFlydW7jXjP3/F9TzgCwzIiQJdfsCKk6ymacAWC5ESFLrrkRksxGuY/x9Z8BYPkRIQAAT0QIAMATEQIA8ESEAAA8ESEAAE9ECADAExECAPBEhAAAPBEhAABPRAgAwBMRAgDwRIQAADwRIQBQ6Pf7Ozs72w22s7PT7/drnq7XHyEf4p923v+w/qc/8+LFi1fy2nn/w4f4J3O4iHq9g4OD8/PzhwY7Pz8/ODiIer06A+zrj5C/nPz64y9fvwFA5sdfvn7494U5XHQ6nYuLi+l0+rXBptPpxcVFp9OpM8A2IkIW/XEFsHSsEbK9vf3w8LDoMXzxHh4etre36wywRAiAJnJFyP39/W+Nd39/T4SkiBAApooI+f2HqWVDhBSIEAAmIqTCgiIkjgIVRLFf5WH4PH8J+0kRMu6vqbX+eH4f2+c2ar+s/gKLUhEhXxrviRESR4FSljAYhtZirR4RslBECFCPK0Km0+mvXt7/QRVW//g3v1aWw3Q6fWqEBEFQSoMkWPwzYoaljJAZxv011R49W/MeiBCgnooIufJyuKVWd7/P36utQ792lsEcIiSMokAb0+MoCKIoJEIEIgR4qZ41Qr7fXW18hAwnQ5kXyYIsSu9KlFLZ2B/nqTMMVRBFYbLWETrDMKseRLEWIWbLrr3JEsc0mhEho3ZWba0/TgfdfluUCEVGmJsV7STL4/5atiyqjNLS9qioUezFqCMKRGm5zyWiJ9oWZq0aXdJaW658BOaoIkIuvRxuqdXdz5eXl5eXn3dX1dbhpXh/uKVUtvpwq/iKpVuJuskNjFb6eXe1tL1sJKs4T/OJkMkwzMZrUZKO0nEUZsN1vpkWIbKq/bGKXppHSHXL5T7qJTMjZNQuj8KjtjZ+6yu1CDE3E3chlhuSUTsfm5NhuaievWtnexu1y+N1cT8h7yzM3Wg1xeFZa83skn5+zF4Br4UrQu7u7v7n5d2muJJbefspLf70dkUptflObFWsfLeZrPr0diXd5N3myspKssG7TbXy9pNYJ3eVt2FZ/XR3d3fziJB8VM6TQ7sxsd4HiLuQ4m7FGNmH5oSYNpFl3HMktyyyjllip0WIZZ6nNNRWRIi5mRzQkyFZVpdVXO/N+5DSfsv3GOUbkdIR5Yv2WrO6VD4/yzdTB8xJRYSMvQw2VKt7XCyojcF4PB4fd1vpO2MjsTb7d7DR6h4PNlrd4/Fxt5VsOthQSslqSYGgNTkP84qQYkYqHarzoT+OAlXckARzjBBry6Jjemy4fnms8HtFSFFBXOdXjtfj/lqeB1pLei+rH29URIillkeE8GgFr1NFhJx4GayrVvfIWDrqttT6wL7RyclRt5Vv1uoeDdZb3aPk/SBbU2ypVFK53Mj8zS9C0ot9sWTcjsRR8Oi7EDFHNpkMI/ksxNFyJJ6ThEN7Sc2JrPzyvl8eNbMRM5+qqh8h435/lK/NZ43qjtfj/po5qWTr87dRuz36JifT5FoZSrZas2+MjIksEgSv1PNGyGBdpcGhR8jJYF3pm2ULR91Wq5VumrxP1xx1u2n1vKmi9ZOTk8F6Vidpy3zzeHOMEH1BPgvJppqCMHz0XYjWQF6leHhSblk+fNfDrSip+Ti9mDlyZ0PdCMkaKz1eL56BV4/XRVfW2u017fG23pQ52yUf28in5v3SE5DSHFmduTUep6MRXBFye3v7Xy/frcuv7vp3afHHN61iwdhQrPn4ppUvf3zTUq03H40KWqt6WV7FfPN4t7e3/AcnKf6DEwCmigj5T+MRIQUiBIDJFSE3Nzf/arybmxsiJEWEADARIRWIkAIRAsBUESH/bDwipECEADC5IuT6+vofjXd9fU2EpPjb6QBKKv52+unp6dXV1d8b7Orq6vT0lL+dnvr5/MtfT3/jxYsXL/n6+fyLOVz0er39/f2zs7PrBjs7O9vf3+/1enUG2NcfIQBQ397eXqfT2W6wTqezt7dX83QRIQAAT0QIAMATEQIA8ESEAAA8ESEAAE9ECADAExECAPBEhAAAPBEhAABPRAgAwNP/AXx33NQWe7zVAAAAAElFTkSuQmCC" alt="" />

把上面代码打包为A.jar后,eclipse会自动为我们生成下面这个文件位于META-INF:
aaarticlea/png;base64,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" alt="" />
MANIFEST.MF文件
Manifest-Version: 1.0
Main-Class: cn.intsmaze.A   这里指定入口类
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAPsAAABXCAIAAABNzqRkAAADoklEQVR4nO3cW5bcIAxFUc9/VB5afmmQxAVkg1Nnf2S5/BDCdU1XJSt9XQAAAAA+6i5kVXvu8qw+szzXz1zlLfenGjQxTvnKzpQulRMWpxpXOO1WPtTP9DJ0QuJ3tdFnPprVyy0zOfR+vWV0GTrQoW0rq2l7gneVuSzFO7vVVuqbdczz5+TOt61s9r+xH/O+xfvb+qN1kk0PEFzoHTJnfv29+0op5WRvW5xCdU7wfuv1lfl256LY0k+7syzbvWRlvmNWqg/d2fa2Dt2R0frBHfT6mZY137bmXJ/P9WPW93bGb0fVT7d+GvMuVC+D4buTD2YyUVmvP7q9ImW+Ys1j+2l3mpe8+b64ujclHl6cqldcrDldPxg0686uz1evWe5R7t47/QRNVttKb1nvS8QMx8Tl5UvzaLUh3rtLS7Z3KOh2ccp6P6N3OKh/NTd8bz93o+2w3b6b+z/a0mbxO3R+/VH0g8ef0dPWAPoBAAAAAADvq77787cB+M+1+Sbx+C0kHh92/+Udavdf4b82K3WADcogmqEMEqxc0q0PvGo68d52tZyTeJwlK/FKykk89iPx+C1BIu9GudO73HsAiDsAAADwE4Y+92/8ksD3EyQwvy4HX4JJPE5h5tVLsJlpJd9mhfghSfHycPgkJQ3TiR8daJE3BIn/gNdWpsTExytrPND6fIPLSfwHnJB4M8HKZ4aJNX5xvl5vytD4LaNr/HTN52LnJZvEf4O5dgY7223vfG84pR+9/6tYcZWBRudbLufmuO1LEv8BXs68lCvnewMpnVQDtbqDdttQ+q8S70W8ekniP8Bb3sTEB3FsB+oeLf/sXhhkNx5I6b/c4z1p5o0KhsYRlGSPbnsDdY+KiS+zODGQ0n88HbOl7tA4wlACglisJN5cI2+LUnNL4rvjYicl2d4hs5R5fnum0tjQheL5o/MNnrFuS92j2CBIQGJ9UXWhWS0YSNmZPl8S/z3dZWyLKpfBE3L7n/i9xyB3vvpjDLiGsjL6AwEAAAAAAAAAAAAAAAAAAAAAAAAAAAAA3pf7f+8X6/ArAPCs0V/hopywGFlCj6dU2TJftr8K5oU4Eno8Ig6W91HHu8r8dBTv7FZTZwIoplMVXCgmuEo8occbViI1lOyJZZ64I5+37pYvg9h1k+pte9eKR4F53VDGyWtPWE88ccezzE8dE5eXL82j1Ub3R4TZ4WK3QIIg8Yn1STwO8mgQSTx+C4kHAAAAAAAAAHzYP7RyS+ZW+MnkAAAAAElFTkSuQmCC" alt="" />
把上面代码打包为B.jar
aaarticlea/png;base64,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" alt="" />
MANIFEST.MF文件
Manifest-Version: 1.0
Main-Class: cn.intsmaze.demo  这里指定入口类
aaarticlea/png;base64,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" alt="" />
因为这里引用了工程lib下面第三方的jar包,但是该jar包并不在classpath路径下面,所有就没有找到该类。
在MANIFEST.MF文件增加calsspath值即可。
Manifest-Version: 1.0
Main-Class: cn.intsmaze.demo
Class-Path: lib/jedis-2.8.0.jar 
然后我们把jedis-2.8.0.jar放到我们B.jar的同一级目录下即可。
aaarticlea/png;base64,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" alt="" />
aaarticlea/png;base64,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" alt="" />
这里成功运行了。
注意:
manifest.mf文件定义如下所示:
Manifest-Version: 1.0
Main-Class: com.Task
Class-Path: lib/dom4j-1.6.1.jar lib/jaxen-1.1-beta-7.jar
注意:
<> manifest.mf文件最后一行必须是一个空行。
<> lib/dom4j-1.6.1.jar和lib/jaxen-1.1-beta-7.jar之间用一个空格隔开。
<>每个冒号后有一个空格。
Maven打包:
代码如下:
package cn.intsmaze;
public class A {
public static void main(String[] args) {
System.out.println(args[0]);
System.out.println("java工程打jar包");
}
} package cn.intsmaze;
import java.util.HashMap;
import java.util.Map;
import redis.clients.jedis.Jedis;
public class demo {
public static void main(String[] args)
{
System.out.println("java工程调用第三方jar包");
Jedis jedis = new Jedis("localhost", 6379);
Map map=new HashMap();
map.put("11", "1");
d.jedis.hmset("33", map);
d.jedis.close();
}
}
如上代码当他们的pom文件中只配置了以下属性时:
 <dependencies>
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.7.3</version>
</dependency>
</dependencies>
这个时候使用maven打包。观察他的目录结构。
这个jar包里面没有包含依赖的jedis的jar包,且manifest.mf文件中也没有指定入口类和Class-Path(该程序到哪里去加载它依赖的jedis.jar包)。
如果要成功运行这个jar包,我们要在manifest.mf设置Main-Class和Class-Path。
方式二:我们可以在pom文件中设置把工程打jar包时把它依赖的jar包也打进来,同时指定Main-Class。
 <build>
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
<archive>
<manifest>
<mainClass>cn.intsmaze.demo.RedisDemo</mainClass>
</manifest>
</archive>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
</plugins>
</build>
观察他的目录结构。
同时也会打一个没有带依赖的jar包(效果就和没添加插件设置一样)
在打包storm工程时的问题:
 <dependencies>
<dependency>
<groupId>org.apache.storm</groupId>
<artifactId>storm-core</artifactId>
<version>0.9.5</version>
</dependency>
</dependencies>
这个项目只会依赖jdk的jar包和storm的jar包,不依赖其他第三方jar包,我们把这个工程打出jar包,根据上面很明显我们知道jar包中不包含依赖的storm的jar包,且manifest.mf文件中也没有指定Main-Class和Class-Path。
但是把它提交到storm集群中,它是会运行的,这是因为stom集群的Class-Path的路径有jdk和storm的jar包了(我们使用java -jar命令就是jdk什么的。)。关于Class-Path我可以理解的,但是没有指定入口类,它是怎么启动的,我还要慢慢研究。
当上面的storm工程需要依赖第三方的mysql包时,我们必须在pom文件中要求把依赖的jar包打进来,不然我们要在manifest.mf指明它要到哪里去加载依赖的mysql包,同时还要把mysql包上传到我们打的jar包将要运行在那台机器上的指定目录让他可以根据Class-Path加载进去。
<dependencies>
<dependency>
<groupId>org.apache.storm</groupId>
<artifactId>storm-core</artifactId>
<version>0.9.5</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.27</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
<archive>
<manifest>
<mainClass>cn.intsmaze.helloworld.WordCountTopologyMain</mainClass>
</manifest>
</archive>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
</plugins>
</build>
这里把依赖的第三方jar包都打进去了。
但是我们提交该jar包到storm集群中,报了如下错误:
java.lang.RuntimeException: Found multiple defaults.yaml resources.
You're probably bundling the Storm jars with your topology jar.
[jar:file:/home/hadoop/app/storm/lib/storm-core-0.9.6.jar!/defaults.yaml,
jar:file:/home/hadoop/stormApi-wordcount-1.0-SNAPSHOT-jar-with-dependencies.jar!/defaults.yaml]
这里说明stom集群环境中有storm的jar包,我们提交的jar包里面也包含storm的jar包,在读取配置文件时,发现有一样的文件冲突了导致启动错误。
这个时候我们设置如下:
<dependency>
<groupId>org.apache.storm</groupId>
<artifactId>storm-core</artifactId>
<scope>provided</scope>期望JDK、容器或使用者会提供这个依赖
<version>0.9.5</version>
</dependency>
这个时候不会把依赖的storm的包打进工程中,只会把依赖的mysql包打进来。