IDEA添加配置文件到classpath
突然发现有一种简单的办法:
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的更多相关文章
- Macos mysql 8.0.11 添加配置文件
mac 安装mysql 后,没有配置文件,如果需要添加配置文件,需要在/etc 目录下面添加 my.cnf 文件. 添加方法 打开文件命令:sudo vi /etc/my.cnf 文件添加内容: [ ...
- 基于spring-boot的测试桩设计-添加配置文件(properties)
编写测试时,有些内容可以放到配置文件中. 第一步:新增配置文件 conf.properties 第二步:编写配置文件类 MockConf package mock.mockdemo.conf; imp ...
- python - requests中添加配置文件
HttpRequests.py #-*- coding:utf-8 -*- import requests class HttpRequests(): def http_requests(se ...
- LabVIEW--为设备添加配置文件.ini
需求:我同一个程序下载到两台机器人上,有些参数是不一样的,比如说服务器的ID或者端口,以及存放文件的位置,如果我每次下载之前改程序的话就非常麻烦了(虽然在程序里面是作为全局变量来存的),不利于后期的更 ...
- Linux下MySQL5.7.18二进制包安装(手动添加配置文件my_default.cnf)
本文出处:http://www.cnblogs.com/wy123/p/6815049.html 最新在学习MySQL,纯新手,对Linux了解的也不多,因为是下载的最新版的MySQL(MySQL5. ...
- eclipse中添加配置文件夹config
1. 在项目上右键->Build path->Configure Build Path->Source下的Add Folder,如图 2. 在弹出框中,Create New Fold ...
- C++中添加配置文件读写方法
比如有一个工程,一些变量有可能需要不时的修改,这时候可以通过从配置文件中读取该数值,需要修改时只需要修改配位文件即可. 比如有一个这样的变量m_nTest; 我么可以写两个函数ReadConfig() ...
- maven项目添加配置文件
1. 在src/main/resources下新建param.properties 2. 在param.properties文件中添加 mqtt.host=tcp://127.0.0.1:1883 m ...
- 为PO手写添加配置文件(hbm.xml)
随机推荐
- 基于linux下的krpano的使用
鉴于目前网络上关于krpano的使用和介绍少之又少,结合自己的学习和使用经历,做个总结和记录. 1.安装 下载地址: linux https://krpano.com/forum/wbb/index. ...
- mysql之找回误删数据
场景:我们开发阶段,经常要有一些测试数据在我们测试相关功能的时候,是十分必要的.后期由于引入了正式的数据,但是测试数据并没有被及时清理.这个时候由于一个误删除,导致一些正式的数据被删除,由此,一场追找 ...
- 微信QQ打开网页时提示用浏览器打开
微信QQ打开网页时提示用浏览器打开 一,需求分析 1.1,使用微信或QQ打开网址时,无法在微信或QQ内打开常用下载软件,手机APP等.故此需要在微信qq里提示 二,功能实现 2.1 html实现 &l ...
- java lang(ClassLoader)
一.什么是ClassLoader? 大家都知道,当我们写好一个Java程序之后,不是管是CS还是BS应用,都是由若干个.class文件组织而成的一个完整的Java应用程序,当程序在运行时,即会调用该程 ...
- Angular MVC
<!DOCTYPE html><html ng-app="myApp"><head lang="en"> <meta ...
- MyBaits全局配置文件的各项标签1
■dtd约束 <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" ...
- js中的call、apply、bind
在js中每个函数都包含两个非继承而来的方法:call()和apply() call和apply的作用都是在特定的作用域中将函数绑定到另外一个对象上去运行,即可以用来重新定义函数的执行环境,两者仅在定义 ...
- CSS实现元素水平垂直居中
我们知道,实现元素的水平居中比较简单,在设置了宽度后,设置左右margin为auto就可以. 但是如何设置元素垂直居中呢? 当然,对于单行的文字,可以通过设置line-height来解决, 可以对于一 ...
- echo "" > 和 echo "" >> 的区别
在写shell脚本中,如果判断一个文件已经存在,但希望重写这个文件,一般用如下方式 echo "" > file.txt 这个表示清空文件的内容,如果使用 echo “” & ...
- Kettle转换工具Windows版安装
一.简介 Kettle是一款国外开源的ETL工具,纯java编写,可以在Window.Linux.Unix上运行,绿色无需安装,数据抽取高效稳定. Kettle 中文名称叫水壶,该项目的主程序员MAT ...