मेरे पास एक साधारण एप्लिकेशन है जो एक प्रॉपर्टी फ़ाइल से पढ़ता है और लिखता है। यह नेटबीन में विकसित किया गया था और जब नेटबींस के भीतर से चलाया जाता है तो ठीक काम करता है। हालांकि, अब मैंने इसे बनाया और तैनात किया है, गुण फ़ाइल नहीं मिल सकती है।क्यों मेरा जावा एप्लिकेशन मेरी गुण फ़ाइल नहीं ढूंढ सकता
परियोजना संरचना
com/company/projectname/controller/controllerclass.java <- this is where the code using the properties file exists
conf/runController.properties <- the properties file, this exists here
कोड में मैं पहुंचने के लिए नीचे है गुण फ़ाइल:
private final String PROPERTIESFILELOCATION = "conf/runController.properties";
public void runController(){
this.runController = new Properties();
this.propertiesLocation = this.getClass().getClassLoader().getResource(this.PROPERTIESFILELOCATION);
FileInputStream propsInput = new FileInputStream(this.propertiesLocation.getFile());
this.runController.load(propsInput);
}
(संक्षिप्तता के लिए संक्षेप)
जब मैं से जार फ़ाइल फोन कमांड लाइन I मुद्दा:
java -classpath /usr/java/projectdirectory/project.jar com.company.projectname.controller.controllerclass arg1
तो, मैंने इस तरह से अन्य परियोजनाओं पर पहले इसे हासिल करने में कामयाब रहा है लेकिन किसी कारण से यह काम नहीं कर रहा है।
मैंने जार फ़ाइल के अंदर संरचना की जांच की है और सभी की अपेक्षा की जाती है।
क्या कोई मेरी गलती को इंगित कर सकता है और मुझे इसे पाने और चलाने में मदद कर सकता है?
संपादित करें- नामों को मिलान करने के लिए नाम बदल दिया। वे हमेशा मेरे कोड
* अंदर * जार फ़ाइल, फ़ाइल 'के रूप में conf/controller.properties' मौजूद हैं, या के रूप में' conf/runController.properties', या यह एक अलग नाम (या अलग रास्ता अंदर है करता है डब्बा)? – dashrb
मैंने स्पॉट के लिए धन्यवाद नमूना कोड बदल दिया था। यह जार फ़ाइल में conf/runController.properties पर मौजूद है। मेरे ऐप – nathj07
में सभी नामों का मिलान क्या होगा यदि आप संपत्ति को '/ conf/runController.properties 'के रूप में बदलते हैं, तो यह जार से संबंधित होना चाहिए (और जार में .class फ़ाइल के स्थान के सापेक्ष नहीं) – dashrb