ant运行java程序时, 它不能加载指定properties文件, 怎么处理?

 

运行时, 目录结构如下: 

 

    .

    |-- ./build

    |   `-- ./build/TestAntLoadFile.class

    |-- ./build.xml

    |-- ./dist

    |   |-- ./dist/icpFinder.jar

    |   `-- ./dist/icp-finder.properties

    |-- ./icp-finder_bak.properties

    `-- ./src

        `-- ./src/TestAntLoadFile.java

 

 可运如何代码时, 

 

 

 public class TestAntLoadFile {
    private static final String CUSTOMER_CONFIG_FILE_NAME = "icp-finder.properties";
    
    public static void main(String[] args) {
        InputStream custumerConfigIn = TestAntLoadFile.class.
                getClassLoader().getResourceAsStream(CUSTOMER_CONFIG_FILE_NAME);
        
        System.out.println("custumerConfigIn: " + custumerConfigIn);
    }

 }

 

build.xml中核心配置如下: 

 

	<path id="run.classpath">
	    <fileset dir = "${dist.dir}" >
   	        <include name="**/*.jar"/>
   	        <include name="**/*.properties"/>
   	        <include name="./icp-finder.properties"/>
	    </fileset>
	</path>

    <target name="run" depends="jar">
        <java fork="true" classname="TestAntLoadFile">
            <classpath>
                <path refid="run.classpath"/>
            </classpath>
            
        </java>     
    </target>
 

 

 

 

 

 显示结果:custumerConfigIn: null。 

 

 这是为什么? 我知道是ant脚本里写的可能有问题。 同样的代码在Eclipse中运行时显示是没问题的。 

 

实验代码见附件。 

 

你可能感兴趣的:(properties)