例如,这是输出的jlink图像:
├── bin
│ ├── java
│ ├── keytool
│ └── launcher
├── conf
│ ├── net.properties
│ ├── sdp
│ └── security
├── include
│ ├── classfile_constants.h
│ ├── jni.h
│ ├── jvmticmlr.h
│ ├── jvmti.h
│ └── linux
├── legal
│ └── java.base
├── lib
│ ├── classlist
│ ├── jexec
│ ├── jrt-fs.jar
│ ├── jspawnhelper
│ ├── jvm.cfg
│ ├── libjava.so
│ ├── libjimage.so
│ ├── libjli.so
│ ├── libjsig.so
│ ├── libnet.so
│ ├── libnio.so
│ ├── libverify.so
│ ├── libzip.so
│ ├── modules
│ ├── security
│ ├── server
│ └── tzdb.dat
├── man
│ └── man1
└── release
在bin
目录中,我有launcher
文件,它将执行我的模块化Java应用程序。
我的计划是将更多目录,例如settings
,work
等添加到输出的jlink图像目录中。用户只需将该图像作为一个zip文件即可,并在解压缩后使用launcher
文件来运行我的应用程序。
问题在于我不知道如何访问我自定义添加的目录(例如settings
,work
等),因为用户可以将该图像解压缩到任何地方。如果我能以某种方式获得该图像的位置,一切都会很好。也许有一种方法可以找出运行我的程序的Java可执行文件的位置(因为它只是bin
目录中的Java可执行文件)?我不确定。
有什么建议吗?