2014-06-05 5 views
8

का उपयोग कर एक निष्पादन .jar बनाना मैं एक ऐप्स जो mail-1.4 और आदि जैसे कुछ बाहरी jar रों उपयोग कर रहा है और अब मैं आईडीई (IntelliJ) से बाहर मेरे ऐप पर अमल करना चाहते हैं मिल गया है। इसके अलावा, मैं अनुदेश फ़ाइल> परियोजना संरचना> कलाकृतियों पीछा कर रहा था और इतने पर, लेकिन मेरे कमांड प्रॉम्प्ट का कहना है:Intellij

Exception in thread "main" java.lang.SecurityException: Invalid signature file 
igest for Manifest main attributes 
     at sun.security.util.SignatureFileVerifier.processImpl(Unknown Source) 
     at sun.security.util.SignatureFileVerifier.process(Unknown Source) 
     at java.util.jar.JarVerifier.processEntry(Unknown Source) 
     at java.util.jar.JarVerifier.update(Unknown Source) 
     at java.util.jar.JarFile.initializeVerifier(Unknown Source) 
     at java.util.jar.JarFile.getInputStream(Unknown Source) 
     at sun.misc.URLClassPath$JarLoader$2.getInputStream(Unknown Source) 
     at sun.misc.Resource.cachedInputStream(Unknown Source) 
     at sun.misc.Resource.getByteBuffer(Unknown Source) 
     at java.net.URLClassLoader.defineClass(Unknown Source) 
     at java.net.URLClassLoader.access$100(Unknown Source) 
     at java.net.URLClassLoader$1.run(Unknown Source) 
     at java.net.URLClassLoader$1.run(Unknown Source) 
     at java.security.AccessController.doPrivileged(Native Method) 
     at java.net.URLClassLoader.findClass(Unknown Source) 
     at java.lang.ClassLoader.loadClass(Unknown Source) 
     at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) 
     at java.lang.ClassLoader.loadClass(Unknown Source) 
     at sun.launcher.LauncherHelper.checkAndLoadMain(Unknown Source) 

मेरे MANIFEST लगभग खाली:

Manifest-Version: 1.0 
Main-Class: ru.tenet.smsc.SMSC 

क्या गलत है?

+1

आपको यह त्रुटि कब मिलती है? जब आप आर्टिफैक्ट बनाते हैं या जब आप अपना आवेदन चलाते हैं? मैं बाद में gues इसलिए इस मामले में अपनी कमांड लाइन दिखाओ। और आप http://stackoverflow.com/questions/999489/invalid-ignature-file-when-attempting-to-run-a-jar –

+0

पर एक नज़र डालें, आप बिना किसी चिंता के सभी निर्भरताओं के साथ एक एकल जार बना सकते हैं हस्ताक्षर अपवाद। निकाली गई निर्भरताओं को न जोड़ें। अधिक जानकारी के लिए यह उत्तर देखें: http://stackoverflow.com/questions/41746177/how-do-i-create-a-runnable-jar-in-intellij-as-i-would-in-eclipse/43855741#43855741 –

उत्तर

10

लक्षित जार में निकाले गए जारों में से एक पर हस्ताक्षर किए गए थे। इसे ठीक करने का सबसे आसान तरीका है "मॉड्यूल से जेएआर बनाएं" संवाद में "आउटपुट निर्देशिका में कॉपी करें और लिंक के माध्यम से लिंक करें" संवाद

+0

इस तरह यह केवल एक जार संग्रह के अंदर, सभी जार निर्भरताओं के साथ एक फ़ोल्डर बनाएगा। – loretoparisi