2009-03-19 22 views
71

मैं अपने लिनक्स मशीन पर एक प्रोग्राम (जावा एप्लिकेशन) स्थापित करने की कोशिश कर रहा हूं (मैं स्लेकवेयर का उपयोग कर रहा हूं)। मुझे निम्न त्रुटि मिली है, और मुझे समझ में नहीं आता है। क्या आप मुझे सलाह दे सकते हैं कि समस्या से कैसे संपर्क करें? मुझे यकीन नहीं है कि यह एक तरह का सवाल है जिसे मैं यहां पूछ सकता हूं, क्योंकि यह वास्तव में प्रोग्रामिंग प्रश्न नहीं है, लेकिन अगर आप उत्तर देते हैं तो मैं सराहना करता हूं। धन्यवाद।"नहीं X11 DISPLAY चर" - इसका क्या अर्थ है?

यहाँ मैं क्या मिलता है: (? मैं देख रहा हूँ कुछ X11 प्रदर्शन चर सेट करने की आवश्यकता है, लेकिन क्या मूल्य मैं इसे देना चाहिए और कैसे)

~$ java -jar gate-5.0-beta1-build3048-installer.jar 
- ERROR - 

java.awt.HeadlessException: 
No X11 DISPLAY variable was set, but this program performed an operation which requires it. 
java.awt.HeadlessException: 
No X11 DISPLAY variable was set, but this program performed an operation which requires it. 
at java.awt.GraphicsEnvironment.checkHeadless(Graphic sEnvironment.java:159) 
at java.awt.Window.<init>(Window.java:407) 
at java.awt.Frame.<init>(Frame.java:402) 
at net.sourceforge.mlf.metouia.borders.MetouiaDotsBuf fer.<init>(MetouiaDotsBuffer.java:105) 
at net.sourceforge.mlf.metouia.borders.MetouiaDots.<i nit>(MetouiaDots.java:66) 
at net.sourceforge.mlf.metouia.borders.MetouiaToolBar Border.<init>(MetouiaToolBarBorder.java:49) 
at net.sourceforge.mlf.metouia.MetouiaLookAndFeel.ini tComponentDefaults(MetouiaLookAndFeel.java:241) 
at javax.swing.plaf.basic.BasicLookAndFeel.getDefault s(BasicLookAndFeel.java:130) 
at javax.swing.plaf.metal.MetalLookAndFeel.getDefault s(MetalLookAndFeel.java:1591) 
at javax.swing.UIManager.setLookAndFeel(UIManager.jav a:537) 
at javax.swing.UIManager.setLookAndFeel(UIManager.jav a:581) 
at com.izforge.izpack.installer.GUIInstaller.loadLook AndFeel(GUIInstaller.java:373) 
at com.izforge.izpack.installer.GUIInstaller.<init>(G UIInstaller.java:116) 
at sun.reflect.NativeConstructorAccessorImpl.newInsta nce0(Native Method) 
at sun.reflect.NativeConstructorAccessorImpl.newInsta nce(NativeConstructorAccessorImpl.java:39) 
at sun.reflect.DelegatingConstructorAccessorImpl.newI nstance(DelegatingConstructorAccessorImpl.java:27) 
at java.lang.reflect.Constructor.newInstance(Construc tor.java:513) 
at java.lang.Class.newInstance0(Class.java:355) 
at java.lang.Class.newInstance(Class.java:30 
at com.izforge.izpack.installer.Installer.main(Instal ler.java:62) 
+0

मुझे एक ही समस्या है, यह कंसोल पर पूरी तरह से काम करता है लेकिन जब मैं ग्रहण का उपयोग करता हूं तो यह एक ही अपवाद फेंकता है, मैं कोड कोड भी डालता हूं: प्रक्रिया proc_exporting = Runtime.getRuntime()। Exec ("sudo export DISPLAY = 0.0 "); अभी भी –

+1

काम नहीं करता है, उत्तर में से कोई भी उत्तर PUTTY के माध्यम से दूरस्थ रूप से कंसोल से कनेक्ट करते समय इस समस्या को हल करने के लिए आवश्यक जानकारी देता है। एसएसएच को संबोधित करने वाला कोई भी जवाब वास्तव में यह नहीं बताता कि इसे कैसे काम करना है। किसी को भी एक प्रश्न के बारे में पता है जो इसे संबोधित करता है? –

उत्तर

88

आप मुख्य प्रदर्शन पर हैं, तो तो

export DISPLAY=:0.0 

या आप अपने अनुप्रयोग को चलाने से पहले csh या tcsh

setenv DISPLAY :0.0 

उपयोग कर रहे हैं।

असल में, मुझे आश्चर्य है कि यह स्वचालित रूप से सेट नहीं है। क्या आप इस एप्लिकेशन को गैर ग्राफिक टर्मिनल से शुरू करने की कोशिश कर रहे हैं? यदि नहीं, तो क्या आपने डिफ़ॉल्ट .profile, .login, .bashrc या .cshrc को संशोधित किया है?

ध्यान दें कि DISPLAY को सेट करने के लिए: 0.0 पूर्व-मानता है कि आप मुख्य डिस्प्ले पर बैठे हैं, जैसा कि मैंने कहा था, या कम से कम मुख्य उपयोगकर्ता को आपके उपयोगकर्ता आईडी पर लॉग ऑन किया गया है। अगर यह लॉग ऑन नहीं है, या यह एक अलग उपयोगकर्ता आईडी है, तो यह असफल हो जाएगा।

यदि आप किसी अन्य मशीन से आ रहे हैं, और आप उस मशीन के मुख्य प्रदर्शन पर हैं और यह एक्स चल रहा है, तो आप उस होस्ट से कनेक्ट करने के लिए "ssh -X होस्टनाम" का उपयोग कर सकते हैं, और एसएसएच आगे बढ़ेगा एक्स वापस प्रदर्शित करता है। एसएसएच यह भी सुनिश्चित करेगा कि DISPLAY पर्यावरण चर सही ढंग से सेट किया गया है (इसे ऊपर बताई गई विभिन्न डॉट फ़ाइलों में इसे गड़बड़ नहीं किया जा रहा है)। "एसएसएच-एक्स" सत्र में, DISPLAY पर्यावरण चर के पास "लोकलहोस्ट: 11.0" जैसे मान होंगे, जो सॉकेट को इंगित करेगा कि एसएसएच आपके स्थानीय बॉक्स में सुरंग है।

+0

हाय, बहुत बहुत धन्यवाद, पहला मेरे लिए काम किया। हां, मैं इसे एक गैर ग्राफिक टर्मिनल से शुरू कर रहा हूं। – user42155

+0

ऐसा लगता है जैसे यह ग्राफिक्स डिस्प्ले तक पहुंच बनाना चाहता है। ग्राफिक्स डिस्प्ले उपलब्ध नहीं होने पर इसे चलाने के लिए सावधान रहें, या यह किसी अन्य उपयोगकर्ता आईडी से संबंधित है। –

+3

ध्यान दें कि यह काम करता है क्योंकि आप कंसोल पर हैं/थे। यदि आप किसी अन्य टर्मिनल पर थे, तो आपको टर्मिनल पर एक्स सर्वर चलाना होगा और फिर पर्यावरण को अपने मशीन पर इंगित करने के लिए सेट करना होगा (निर्यात DISPLAY = 'पाउल्स टर्मिनल का होस्टनाम': 0.0 उदाहरण के लिए) – KevinDTimm

9

क्या आप इसे एक्स 11 पर्यावरण के भीतर से चला रहे हैं? आप टर्मिनल विंडो का उपयोग कर सकते हैं, लेकिन इसे एक्स के भीतर होना चाहिए (या तो ग्राफिकल लॉगिन के बाद, या स्टार्टक्स चलाकर)। सी खोल आधारित गोले (csh, tcsh, आदि)

के लिए 0: (आदि बैश, श,) के गोले की तरह बैश या setenv प्रदर्शन के लिए 0:

आप पहले से ही एक ग्राफिकल पर्यावरण के भीतर कर रहे हैं, निर्यात प्रदर्शन = कोशिश

यदि आप एसएसएच के माध्यम से किसी अन्य मशीन से कनेक्ट हैं, तो आप जिस मशीन पर बैठे हैं उस पर ग्राफिकल इंटरफ़ेस प्रदर्शित करने के लिए आप -X विकल्प का उपयोग करते हैं (बशर्ते वहां एक एक्स सर्वर चल रहा हो (जैसे खिड़कियों के लिए xming, और आपका मानक लिनक्स X सर्वर)।

+0

हाय, मैं स्टार्टक्स चला रहा हूं। – user42155

+0

ओह ठीक है, Slackware। क्या यह अभी भी बेयरबोन के रूप में है क्योंकि जब मैंने इसे 10 साल पहले इस्तेमाल किया था? –

+0

यह अभी भी रनलेवल 3 में डिफ़ॉल्ट रूप से शुरू होता है। बेशक, यदि आप इसे रनलेवल 5 में शुरू करने के लिए कहते हैं, तो आपको एक सुंदर केडीएम लॉगिन मेनू मिलेगा जिसे आपने केडीई स्थापित किया है। –

-3

अपने "घर" प्रदर्शन मशीन पर "मेजबान +" निष्पादित करने के लिए मत भूलना, और आप "ssh -x होस्ट नाम"

कर रहे हैं जब आप मशीन के लिए ssh

-Tee

+14

मैं दृढ़ता से अनुशंसा करता हूं कि "xhost +" का उपयोग न करें क्योंकि प्रभावी रूप से आपके एक्स सर्वर पर सभी सुरक्षा अक्षम करता है। ssh x11 प्रमाणीकरण को स्वचालित रूप से सेटअप करने के लिए xauth का उपयोग करने के लिए पर्याप्त स्मार्ट है, इसलिए xhost का उपयोग करने की आवश्यकता नहीं होनी चाहिए। –

+0

यह एक टिप्पणी होना चाहिए, एक पोस्ट नहीं। सिर्फ इसलिए कि आप टिप्पणी नहीं कर सकते हैं इसका मतलब यह नहीं है कि आपको एक खराब पोस्ट करना चाहिए। –

0

उबंटू 14.04.01 में मेरा एक ही मुद्दा था जब मैंने जेडीके 8 और नेटबीन्स को स्थापित करने का प्रयास किया, यदि मैं बायोबू टर्मिनल के अंदर स्क्रिप्ट लॉन्च करता हूं (शायद स्क्रीन के साथ ही होता है)।

बस बायोबू से बाहर निकलें और (ग्राफिकल टर्मिनल में) स्क्रिप्ट चलाएं।

0

आरंभिक जांच।

1) आप अन्य मशीन के लिए प्रदर्शन का निर्यात कर रहे हैं, सुनिश्चित करें कि आप उस मशीन पर कमांड xhost + में प्रवेश किया। यह आदेश अन्य मशीन को इस मशीन पर अपने DISPLAY को निर्यात करने की अनुमति देता है। सुरक्षा बाधाएं हो सकती हैं, बस इसके बारे में जानें। ssh -X MachineIP को जांचने की आवश्यकता है xhost + की आवश्यकता नहीं होगी?

2) कुछ बार JCONSOLE इसकी सभी प्रक्रिया नहीं दिखाएगा, क्योंकि उन जेवीएम प्रक्रिया अलग-अलग उपयोगकर्ता के साथ चल सकती हैं और आप दूसरे उपयोगकर्ता के साथ DISPLAY निर्यात कर रहे हैं। इसलिए बेहतर CD_DIR>sudo ./jconsole

3) में किया गया था (WebSphere) का पालन करें; jconsole अपने जावा सर्वर प्रक्रिया को कनेक्ट करने में सक्षम नहीं होगा, उस समय बस लिंक तक जाएं, फिर इसे कनेक्ट करने का प्रयास करें। यह मेरे लिए काम किया। हो सकता है कि यह पृष्ठ उस सर्वर से कनेक्ट करने के लिए jconsole सक्षम करने के लिए कुछ चर प्रारंभ कर रहा हो।

सांत्वना> अनुप्रयोग सर्वर> server1> प्रक्रिया परिभाषा> जावा वर्चुअल मशीन


था मैं AIX (कमांड लाइन इंटरफेस केवल नहीं है जहां उपलब्ध हो, कोई प्रदर्शन यूआई) मशीन के साथ एक ही मुद्दा सामना करना पड़ा है। मैं Windows

के लिए

चरण 1

NX क्लाइंट की स्थापना के द्वारा समाधान किया गया: कि Windows मशीन के माध्यम से, मैं यूनिक्स बॉक्स के साथ जुड़ा हुआ है, जहां जीयूआई सांत्वना उपलब्ध है।
चरण 2: उस यूनिक्स बॉक्स से एईक्स बॉक्स में एसएसएच।
चरण 3: "निर्यात DISPLAY = UNIXMACHINE: NXClientportConnectedMentionedOnTitle" जैसे डिस्प्ले सेट करें
चरण 4: अब यदि हम किसी भी प्रोग्राम को लॉन्च करते हैं जिसके लिए DISPLAY की आवश्यकता होती है; यह इस यूनिक्स बॉक्स पर लॉन्च किया जाएगा।

VNC

आप यूनिक्स बॉक्स जहां प्रदर्शन उपलब्ध है पर VNC स्थापित किया है; तो विंडोज और एनएक्स क्लाइंट की आवश्यकता नहीं है। चरण 1: यूनिक्स बॉक्स से कनेक्ट करने के लिए VNC का उपयोग करें जहां जीयूआई कंसोल उपलब्ध है।
चरण 2: उस यूनिक्स बॉक्स से एईक्स बॉक्स में एसएसएच।
चरण 3:
चरण 4: की तरह "VNCPORT निर्यात प्रदर्शन = UNIXMACHINE": सेट प्रदर्शन अब अगर हम किसी भी प्रोग्राम है जो प्रदर्शन की आवश्यकता है का शुभारंभ; यह इस यूनिक्स बॉक्स पर लॉन्च किया जाएगा।

वरना

चरण 1: कि यूनिक्स बॉक्स के AIX बॉक्स को SSH।
चरण 2:
चरण 3: की तरह "VNCPORT निर्यात प्रदर्शन = UNIXMACHINE": सेट प्रदर्शन अब अगर हम किसी भी प्रोग्राम है जो प्रदर्शन की आवश्यकता है का शुभारंभ; यह इस यूनिक्स बॉक्स पर लॉन्च किया जाएगा।

4

एक और बात है कि एक मामले को वर्णित समान में समस्या हो सकती है - एक्स अग्रेषित नहीं है और $ प्रदर्शन सेट नहीं है जब 'xauth' कार्यक्रम दूरदराज के पक्ष पर स्थापित नहीं है। आप इसे यह की खोज करता है जब आप चलाने "ssh -Xv ip_address" देख सकते हैं, और, अगर नहीं मिला, विफल रहता है, जो नहीं देखा है जब तक आप वर्बोज़ मोड चालू (एक IMO असफल)। आप आमतौर पर उसी नाम वाले पैकेज में 'xauth' पा सकते हैं।

1

बहुत आसान, यह वही समस्या थी, तो मैंने एक ऐप डाउनलोड और स्थापित करने के लिए किया था जो त्रुटि को ठीक करने में मदद करेगा।

डाउनलोड इस एप्लिकेशन Xming:

http://sourceforge.net/project/downloading.php?

इंस्टॉल करें, तो इस लिंक पर सेटिंग्स का उपयोग करें:

http://www.geo.mtu.edu/geoschem/docs/putty_install.html या इस चरणों का पालन करें: एक बार पोटीन और Xming पीसी के लिए डाउनलोड किए जा चुके

स्थापित/विन्यास पोटीन और Xming

, अपने संबंधित निर्देशों के अनुसार स्थापित करें।

कॉन्फ़िगर Xming

एक बार Xming स्थापित किया गया है, आवेदन 'XLaunch' कहा जाता है चलाने के लिए और सत्यापित करें कि सेटिंग्स के रूप में दिखाया गया है:

  • प्रदर्शन सेटिंग्स खिड़कियों पर चयन डिफ़ॉल्ट प्रविष्टियों, आगे क्लिक करें
  • सत्र प्रकार विंडो पर अगला क्लिक करें।
  • अतिरिक्त पैरामीटर विंडो (नोटिस क्लिपबोर्ड चेकबॉक्स सत्य पर) पर क्लिक करें
  • कॉन्फ़िगरेशन सहेजें और समाप्त करने के लिए क्लिक करें।

पोटीन

का विन्यास पोटीन स्थापित करने के बाद, डेस्कटॉप पर पोटीन आइकन पर डबल क्लिक करें और दिखाए गए अनुसार कॉन्फ़िगर करें:

यह एक लॉगिन प्रोफ़ाइल बनाने दिखाता है तो यह बचत।

  • एसएसएच -> एक्स 11 पर, X11 अग्रेषण सक्षम करने के लिए चेकबॉक्स पर क्लिक करें। 0,0

प्रोफ़ाइल सेव तो सर्वर का परीक्षण करने के लिए दूर से कनेक्ट: एक्स प्रदर्शन स्थान पाठ बॉक्स, प्रकार स्थानीय होस्ट पर

  • चीयर्स !!!

  • +0

    कृपया उत्तर में लिंक से आवश्यक जानकारी शामिल करें, क्योंकि वे अंततः मृत हो सकते हैं, जवाब को बेकार कर सकते हैं। – plamut

    4

    तुम इतने खुले पोटीन करने के लिए X11 आप में अग्रेषण पोटीन

    सक्षम करना होगा, कनेक्शन के लिए जाना => SSH => टनलों और जाँच चिह्न सक्षम X11 अग्रेषण

    इसके अलावा sudo सर्वर के लिए और यहाँ नीचे चर निर्यात आईपी अपने स्थानीय मशीन का IP है

    export DISPLAY=10.75.75.75:0.0 
    

    enter image description here

    0

    जो लोग एक X विंडो आवेदन लिनक्स से विंडोज से काम कर प्राप्त करने की कोशिश कर रहे हैं:

    क्या मेरे लिए काम किया मेरी खिड़कियां मशीन पर सर्वर Xming सेटअप करने के लिए किया गया था, पोटीन में X11 अग्रेषण विकल्प सेट जब मैं करने के लिए कनेक्ट लिनक्स होस्ट और मेरे विंडोज़ आईपी एड्रेस में डिस्प्ले पोर्ट के साथ डालें और फिर मेरे विंडोज आईपी एड्रेस के साथ डिस्प्ले वैरिएबल डालें: 0.0

    Xux.hosts फ़ाइल में लिनक्स होस्ट आईपी एड्रेस जोड़ने के लिए भूलना न भूलें ताकि यह सुनिश्चित किया जा सके कि xming सर्वर उस मेजबान से यातायात स्वीकार करता है। इसे समझने के लिए मुझे थोड़ी देर लग गई।

     संबंधित मुद्दे

    • कोई संबंधित समस्या नहीं^_^