获取项目路径

JAVA

一、获取当前路径

idea启动时:项目的跟目录,jar包启动时:jar的跟目录

方式一:System方式

 String property = System.getProperty("user.dir");
 System.out.println("【getProjectPath】" + property);//D:\02src_my\java\study-demo

方式二:File方式

 try {
    String path = new File("").getCanonicalPath();
    System.out.println("【getProjectPath】" + path);//D:\02src_my\java\study-demo
} catch (IOException e) {
}

二、获取编译之后class文件路径

idea启动时:target下目录,jar包启动时:jar中classes目录

方式一:classes的位置

File path1 = new File(this.getClass().getResource("/").getPath());
System.out.println("【getClassPath】" + path1);

//idea运行后结果  D:\02src_my\java\study-demo\java-base\target\classes
//jar包运行后结果  file:\C:\Users\Hello\Desktop\新建文件夹\java-base-1.0.0.jar!\BOOT-INF\classes!

方式二:classes的位置

String path2 = this.getClass().getClassLoader().getResource("").getPath();
System.out.println("【getClassPath】" + path2);

//idea运行后结果  /D:/02src_my/java/study-demo/java-base/target/classes/
//jar包运行后结果  file:/C:/Users/Hello/Desktop/新建文件夹/java-base-1.0.0.jar!/BOOT-INF/classes!

方式三:classes下指定文件的位置

File path3 = new File(this.getClass().getResource("").getPath());
System.out.println("【getClassPath】" + path3);

//idea运行后结果 D:\02src_my\java\study-demo\java-base\target\classes\com\xiang\base\javabase\demo
//jar包运行后结果 file:/C:/Users/Hello/Desktop/新建文件夹/java-base-1.0.0.jar!/BOOT-INF/classes!/com/xiang/base/javabase/demo/

方式四:classes下指定文件的位置

String path4 = this.getClass().getResource("").getPath();
System.out.println("【getClassPath】" + path4);

//idea运行后结果 /D:/02src_my/java/study-demo/java-base/target/classes/com/xiang/base/javabase/demo/
//jar包运行后结果 file:\C:\Users\Hello\Desktop\新建文件夹\java-base-1.0.0.jar!\BOOT-INF\classes!\com\xiang\base\javabase\demo

GO

一、获取电脑上的临时文件目录

windows下一般是在此路径:C:\Users\用户\AppData\Local\Temp

path := os.TempDir()
fmt.Println("path1==" + path)

二、获取运行时的绝对路径

可执行程序 exe 所在位置

func GetAppPath() string {
	file, _ := exec.LookPath(os.Args[0])
	path, _ := filepath.Abs(file)
	index := strings.LastIndex(path, string(os.PathSeparator))
	return path[:index]
}

以下不同启动方式的输出结果:

1、使用GoLand 软件运行:会在电脑的默认路径下直接放入exe文件,如:

exe的输出路径在GoLand中可以配置,具体修改看下放的补充。

2、使用命令:go run  main.go:会在电脑的默认路径下建新的文件夹存放exe文件,如:

3、 运行exe文件:执行go build main.go ,再运行exe文件,就会是exe所在的目录,如:

三、获取当前目录的绝对路径

path2,_:=os.Getwd()
fmt.Println("path2==="+path2)

 

四、获取编译前项目的位置,一般不使用

补充

go服务build之后会生成一个 xxx.exe 文件,服务运行是执行的这个exe文件;

如果不修改项目的【输出目录】,默认这个exe文件存放在 C:\Users\Hello\AppData\Local\Temp 下。

如何修改【输出目录】:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值