我对Linux是个新手,我只会摆弄它,但现在我想让我的Java程序在Linux上运行……
我在互联网上快速浏览了一下,找到了一份目录及其描述的列表。/usr/lib似乎是我存储程序信息的最好地方,但我刚刚在我的VirtualBox虚拟机上查看了一下,似乎我无法在那里写东西,即使拥有根权限。因此,如果有人能为我指明正确的方向,那就太好了。
我还注意到Linux有它自己的“软件中心”,我担心我对这一切的看法可能是错误的,所以如果有人愿意提供一个,那么在Linux上编程的一些介绍可能会有所帮助!
提前感谢
PS My Virtual Machine是一个Ubuntu发行版
发布于 2011-10-08 18:02:33
不仅Linux,而且任何与POSIX兼容的系统(包括BSD、Solaris,甚至Mac )的文件系统结构在FHS中都是标准化的。特别是Ubuntu,看看ubuntu-java团队的Debian policy for Java和packaging guide。
如果您程序是以交互方式运行的,它应该将信息(如数据库和设置)存储在$HOME/.your-program-name (或$HOME/.config/your-program-name)中。如果你的程序是一个系统服务,它应该将它的信息存储在/var/lib中。您还可以在/etc/your-program-name中安装默认配置。
二进制文件是完全不同的,它们的位置前缀应该是可配置的。要充分利用软件中心及其依赖项/更新机制,请对软件执行package操作。如果打包,这些二进制文件(以及随附的库)将进入/usr/树,如果手动安装,将进入/usr/local/。无论前缀是什么,二进制文件放入bin (即/usr/bin),库文件放入lib32/lib64,其他数据放入share。
如果你不想打包你的程序,也不想遵循FHS强加的结构(但你真的应该这样做),另一种选择是将代码和其他对象放入/opt/your-program-name中。注意,您的程序生成和操作的(可变)数据仍然应该放在$HOME/.your-program-name(交互式)或/var/lib/your-program-name(服务)中。
发布于 2011-10-08 17:59:23
将其存储在运行该程序的用户的主目录下-在一个隐藏目录中(前面有点),例如:.program-data。它的最短路径是:~/.program-data,完整路径取决于操作系统的发行版-通常是/home/user name/.program-data
发布于 2011-10-08 18:04:00
存储应用程序的最简单位置是主目录。您可能希望为服务创建一个用户和单独的主目录。
但是,听起来您好像是在用Java编写命令行或GUI工具。存储应用程序的一个常见位置是在bin目录下,如/usr/local/bin或/home/myuser/bin lib通常用于应用程序加载的共享库。(Java不使用它们)
https://stackoverflow.com/questions/7696047
复制相似问题