我对java很陌生,在设置classpath时有一些疑问。 在这个论坛上提问之前,我已经完成了我的家庭作业。试图谷歌搜索和引用其他论坛,但没有找到我正在寻找的 。Java - 使用环境变量引用外部罐子
所以,它就是这样。
- 我正在开发一个Java应用程序,需要外部罐子才能正常运行。
- 当且仅当在系统中安装了自定义应用程序“XYZ”时,才能使用这些外部罐。
- 由于许可问题,我不想在应用程序中打包XYZ应用程序罐。
- 我的应用程序的功能是 - 检查应用程序XYZ是否存在于目标主机中,如果可用则运行。 否则,会记录一个错误,指出XYZ需要运行该程序并退出。
现在到了主要部分...
- XYZ应用程序可用于各种平台 - Linux/Windows的/的Solaris /等
- XYZ可以在安装过程中定制安装定制目录。 说 - Windows中的D:/ XYZ或D:/ apps/XYZ,Linux中的/ apps/XYZ或/ apps/admin/XYZ,solaris等。
- 安装XYZ应用程序后,在安装了XYZ的目录/ JAR中。 例如 - D:/ XYZ/jars,/ apps/XYZ/jars in * nix。
- 当应用程序XYZ安装在任何平台上时,会创建一个新的环境变量XYZ_LIB_PATH,并指向 存在罐子的相应文件夹 - 例如XYZ_LIB_PATH = D:/ XYZ/jars是在应用程序 XYZ安装到D:/ XYZ。同样,如果应用程序XYZ在linux机器上安装了 ,则将创建XYZ_LIB_PATH =/apps/XYZ/jar。
现在我想做的是..
我想我的应用程序是指环境变量 - XYZ_LIB_PATH拿起所有目前在通过的XYZ_LIB_PATH环境变量指向的目录 的jar文件该平台。 通过这样做,我不必担心在安装应用程序时在每台计算机上查找jar文件。它可以将 查看到XYZ_LIB_PATH变量所指向的目录中,并通过加载所需的jar来继续运行。
这是因为应用程序XYZ是可定制的,每个用户可能已经将它安装在不同的目录中 ,我的应用程序需要找出XYZ安装位置。相反,如果我使用环境变量,通过查看为XYZ_LIB_PATH变量设置的路径,我可以很容易地为我的应用程序获取所需的JAR文件。用户无法更改环境变量 ,因此此变量在所有平台上都保持不变,并且我可以获得罐子的有效路径。
有什么办法可以在java中完成这个任务吗?
感谢, 维奈小号
谢谢Nizet,有道理,够简单.. :) – 2012-07-22 15:08:00