突然发现有一种简单的办法:

IDEA 的 Mark Directory as
  右键项目中的一个文件夹,会出现目录【Mark Directory as】
选择【Resources Root】 实现下面原文的效果

其中 Excluded :排除掉当前文件夹,如果文件夹是source文件夹,排除了,就变成普通文件夹,不再认为是source,就不会编译当前文件夹内部的java到classpath里


原文如下:

getResourceAsStream()方法可以从classpath 中读取文件,其实就是编译后的class 文件所在的路径

  prop.load(this.getClass().getClassLoader().getResourceAsStream(fileName));

添加到classpath中的文件,会被直接拿到跟class文件相同的目录下,比如下面的这个属性文件config.properties,就在编译后的classes文件夹下

如何添加到这个目录下呢?
  直接在AAA.java 同目录下新建不可以直接实现效果的

通过界面操作的方法

首先可以在src 下新建个目录resources,在这个目录下添加所需的文件config.properties

打开File -> Project Structure ...

选择Modules-> Sources 界面,选择到文件夹 resources,然后右键,选择 Resources

这个时候就添加了属性文件,同时文件夹的图标也会变化

重新build一下,就实现了添加配置文件到classpath 的效果了。

直接修改配置文件的方法

上面的操作,实际上是修改了IDEA的 iml文件,每一个项目都有一个.iml文件
所以我们可以直接在project.iml 文件中添加
  <sourceFolder url="file://$MODULE_DIR$/src/resources" type="java-resource" />

最后重新build 一下就行

原创文章,欢迎转载,转载请注明出处!

IDEA添加配置文件到classpath的更多相关文章

  1. Macos mysql 8.0.11 添加配置文件

    mac 安装mysql 后,没有配置文件,如果需要添加配置文件,需要在/etc 目录下面添加 my.cnf 文件. 添加方法 打开文件命令:sudo vi  /etc/my.cnf 文件添加内容: [ ...

  2. 基于spring-boot的测试桩设计-添加配置文件(properties)

    编写测试时,有些内容可以放到配置文件中. 第一步:新增配置文件 conf.properties 第二步:编写配置文件类 MockConf package mock.mockdemo.conf; imp ...

  3. python - requests中添加配置文件

        HttpRequests.py #-*- coding:utf-8 -*- import requests class HttpRequests(): def http_requests(se ...

  4. LabVIEW--为设备添加配置文件.ini

    需求:我同一个程序下载到两台机器人上,有些参数是不一样的,比如说服务器的ID或者端口,以及存放文件的位置,如果我每次下载之前改程序的话就非常麻烦了(虽然在程序里面是作为全局变量来存的),不利于后期的更 ...

  5. Linux下MySQL5.7.18二进制包安装(手动添加配置文件my_default.cnf)

    本文出处:http://www.cnblogs.com/wy123/p/6815049.html 最新在学习MySQL,纯新手,对Linux了解的也不多,因为是下载的最新版的MySQL(MySQL5. ...

  6. eclipse中添加配置文件夹config

    1. 在项目上右键->Build path->Configure Build Path->Source下的Add Folder,如图 2. 在弹出框中,Create New Fold ...

  7. C++中添加配置文件读写方法

    比如有一个工程,一些变量有可能需要不时的修改,这时候可以通过从配置文件中读取该数值,需要修改时只需要修改配位文件即可. 比如有一个这样的变量m_nTest; 我么可以写两个函数ReadConfig() ...

  8. maven项目添加配置文件

    1. 在src/main/resources下新建param.properties 2. 在param.properties文件中添加 mqtt.host=tcp://127.0.0.1:1883 m ...

  9. 为PO手写添加配置文件(hbm.xml)

随机推荐

  1. Python常用内建方法:__init__,__new__,__class__的理解

    python中所有类都是继承自object, 而object提供了很多原始的内建属性和方法,所以用户自定义的类在Python中也会继承这些内建属性.可以使用dir()函数可以查看,虽然python提供 ...

  2. java高精度学习笔记

    高精度基本用法 valueOf(parament)     将参数转换为指定的类型 add()   相加   subtract() 相减    multiply()  相乘    divide()  ...

  3. Leaf——美团点评分布式ID生成系统 UUID & 类snowflake

    Leaf——美团点评分布式ID生成系统 https://tech.meituan.com/MT_Leaf.html

  4. centos ping www.baidu.com ping: unknown host www.baidu.com

    [root@zabbix ~]# cat /etc/resolv.conf ; generated by /sbin/dhclient-script nameserver 219.141.136.10

  5. Spring.profile配合Jenkins发布War包,实现开发、测试和生产环境的按需切换

    前两篇不错 Spring.profile实现开发.测试和生产环境的配置和切换 - Strugglion - 博客园https://www.cnblogs.com/strugglion/p/709102 ...

  6. asp.net mvc 三种过滤器

    前几天面试遇到这个问题,发现不是很了解,学习了下,这里记录下来 经常需要将用户的操作记录到日志中,或者是验证用户是否登录了网站, 面对这样的需求,以前的操作是自定义一个统一的全局方法,然后做处理, 在 ...

  7. httpd sshd firewalld 服务后面的d的意思

    在操作系统中,一般系统的服务都是以后台进程的方式存在,而且都会常驻系统中,直到关机才结束.这类服务也称Daemon,在Linux系统中就包含许多的Daemon. 判断Daemon最简单的方法就是从名称 ...

  8. Oracle通过ROWID删除表中重复记录

    -- 1 通过ROWID删除T1表里重复的记录    SELECT ROWID,A,B--DELETE FROM  T1WHERE ROWID IN (  SELECT RD  FROM  (     ...

  9. Arrays.copyOf() 和 System.arrayCopy()分析

    java数组的拷贝四种方法:for.clone.System.arraycopy.Arrays.copyof public class Test1 { public static void main( ...

  10. Azure系列2.1.12 —— CloudBlobDirectory

    (小弟自学Azure,文中有不正确之处,请路过各位大神指正.) 网上azure的资料较少,尤其是API,全是英文的,中文资料更是少之又少.这次由于公司项目需要使用Azure,所以对Azure的一些学习 ...