属性文件驻留在Java应用程序之外引发fFileNotFoundException

由于某种原因,我必须将*.properties文件放置在Java应用程序之外。当文件km.properties驻留在java/src/resources/km.properties代码中时,将读取文件,但是当我将同一文件放入C:\Users\abc\Desktop\km.properties 其中时,将抛出


Exception: java.io.FileNotFoundException: property file 'C:\Users\abc\Desktop\km.properties' not found in the classpath

Exception in thread "main" java.lang.NullPointerException

    at com.ir.Constants.<init>(Constants.java:44)

    at com.Constants.main(Constants.java:64)

这是我的代码


public class Constants {

    public Constants(){

        System.out.println(System.getenv("km_config"));

        try {

            Properties prop = new Properties();

            String propFileName = System.getenv("km_config");


            inputStream = getClass().getClassLoader().getResourceAsStream(propFileName);


            if (inputStream != null) {

                prop.load(inputStream);

            } else {

                throw new FileNotFoundException("property file '" + propFileName + "' not found in the classpath");

            }

        }

        catch (IOException e) {

            System.out.println("Exception: " + e);

        }

        catch (Exception e) {

            System.out.println("Exception: " + e);

        } finally {

            try {

                inputStream.close();

            } catch (IOException e) {

                // TODO Auto-generated catch block

                e.printStackTrace();

            }

        }



    }


public static void main(String[] args) throws Exception {

        Constants c = new Constants();


         System.out.println(Constants.DB_PATH1);

         System.out.println(Constants.GIT_REPO_PATH);

         System.out.println(Constants.GIT_MAIN_BRANCH_NAME);

         System.out.println(Constants.TAGGER_PATH);

    }

Constants.java:44 是inputStream.close();


Constants.java:64 是常量c =新的Constants();


请帮助我,我需要将km.properies文件放置在Java应用程序之外的任何位置


命令结果


echo %km_config%


C:\Users\abc\Desktop\km.properties


慕丝7291255
浏览 146回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java