Java 其中是打包的Spring引导应用程序的相对路径
如何/在何处设置打包(jar)Spring Boot jar应用程序的相对路径位置 以下是在我的IDE(IntelliJ)中工作的内容 我的application.properties文件中有以下属性Java 其中是打包的Spring引导应用程序的相对路径,java,spring,spring-boot,jar,Java,Spring,Spring Boot,Jar,如何/在何处设置打包(jar)Spring Boot jar应用程序的相对路径位置 以下是在我的IDE(IntelliJ)中工作的内容 我的application.properties文件中有以下属性 converter.output=upload-dir/output/ converter.input=upload-dir 我有一个Java类为我控制属性 @Component @ConfigurationProperties("converter") public class Convert
converter.output=upload-dir/output/
converter.input=upload-dir
我有一个Java类为我控制属性
@Component
@ConfigurationProperties("converter")
public class ConverterProperties {
//getters
//setters
}
我在IDE中有以下目录结构
src/
target/
upload-dir/
upload-dir/output/
pom.xml
README.txt
然而,我想知道当我生成一个jar并从一个文件夹运行它时,我的上传目录和上传目录/输出文件夹会在哪里?我试着把文件夹放在与jar相同的位置
C:\app\app.jar
C:\app\upload-dir\
C:\app\upload-dir\output\
但是没有骰子。我根据此文档设置@ConfigurationProperties,但是我似乎找不到任何关于打包jar相对路径的地方。一个典型的spring启动应用程序在信息级别的第一行显示了您正在寻找的一些信息(使用PID 1234在{host}上启动应用程序{name}({jarpath}由{workdir}中的{user}启动) 查看StartupInfoLogger中的源代码,您似乎需要使用ApplicationHome helper类(在包org.springframework.boot中)来获取正在运行的spring boot应用程序的JAR文件的绝对路径 下面是一个Java代码示例,用于检索jar文件的位置和包含jar文件的目录。然后使用该代码创建uploadDir文件(假设它是jar目录的子目录)
您可能希望在spring boot应用程序中运行的某个应用程序类中运行该应用程序。它似乎使用传递给ApplicationHome构造函数的类来查找包含该类的jar。典型的spring boot应用程序在中的第一行中显示您正在查找的一些信息fo级别(使用PID 1234在{host}上启动应用程序{name}({jarpath}由{workdir}中的{user}启动) 查看StartupInfoLogger中的源代码,您似乎需要使用ApplicationHome helper类(在包org.springframework.boot中)来获取正在运行的spring boot应用程序的JAR文件的绝对路径 下面是一个Java代码示例,用于检索jar文件的位置和包含jar文件的目录。然后使用该代码创建uploadDir文件(假设它是jar目录的子目录)
您可能希望在spring boot应用程序中运行的某个应用程序类中运行此应用程序。它似乎使用传递给ApplicationHome构造函数的类来查找包含该类的jar。谢谢。这让我朝着正确的方向前进,并找到了最终的解决方案。谢谢。这让我走对了方向方向和最终解决方案。
ApplicationHome home = new ApplicationHome(this.getClass());
File jarFile = home.getSource();
File jarDir = home.getDir();
File uploadDir = new File(jarDir, "upload-dir");