我有一个 Java 项目,我在 Eclipse 中成功执行了它。现在我如何做一个可安装的文件。
我正在使用 Linux mint,所以根据这个操作系统来判断。
我正在尝试使用 DEBIAN,但我没有成功。
最后,我需要知道我必须在 preinst、postinst、prerm 和 postrm 文件中编写/编码什么。
我有一个 Java 项目,我在 Eclipse 中成功执行了它。现在我如何做一个可安装的文件。
我正在使用 Linux mint,所以根据这个操作系统来判断。
我正在尝试使用 DEBIAN,但我没有成功。
最后,我需要知道我必须在 preinst、postinst、prerm 和 postrm 文件中编写/编码什么。
Debian 文件创建
第 1 步:使用您想要的项目名称创建一个文件夹。[例如。项目名称]
第 2 步:创建一个空文件夹,如下所示。
第 3 步:在 DEBIAN 文件夹中创建一个文件作为“控制”,没有任何扩展名,并将以下数据放入其中。
Package: projectname
Version: 2.6-r1473-1
Section: editors
Priority: optional
Architecture: all
Depends: sun-java5-jre | sun-java6-jre | openjdk-6-jre | openjdk-7-jre
Conflicts: projectname-praha
Replaces: projectname-praha
Installed-Size: 15684
Maintainer: projectname Developers <contact@projectname.biz>
Homepage: http://projectname.biz/
Description: Free cross-platform project scheduling and management tool. Gantt chart, resource load chart, MS Project import/export.
projectname is a free and easy to use Gantt chart based project scheduling and management tool.
The full installation includes:
.
* Task hierarchy and dependencies
* Gantt chart
* Resource load chart
* Generation of PERT chart
* WebDAV based groupwork
* Export to PDF and HTML
* Microsoft Project import and export
最后保存退出。
第 4 步:在 DEBIAN 文件夹中创建一个不带任何扩展名的文件为“postinst”并将其放入
#!/bin/sh
set-e
if [ "$1" = "configure" ]; then
if [ -e /usr/bin/projectname ]; then rm -f usr/bin/projectname; fi
ln -s /usr/bin/projectname/projectname /usr/bin/projectname
if [ -x "$(which update-menus 2>/dev/null)" ]; then update-menus; fi
if [ -x "$(which update-mime 2>/dev/null)" ]; then update-mime; fi
fi
在这里,在第 6 行“/usr/bin/projectname”是用户定义的,你可以定义为你自己的,你需要安装你的项目。
第 5 步:在 DEBIAN 文件夹中创建一个不带任何扩展名的文件为 'postrm' 并将其放入
#!/bin/sh
set-e
if [ -e /usr/bin/projectname ]; then rm -f usr/bin/projectname; fi
if [ -x "$(which update-mime >/dev/null 2>&1)" ]; then update-mime; fi
if [ -x "$(which update-menus 2>/dev/null)" ]; then update-menus; fi
fi
第 6 步:在“usr”文件夹中创建一个文件夹作为“lib”和“share”文件夹
在'packages'中创建一个没有任何扩展名的文档作为项目名称,并将以下数据放入其中。
application/projectname+xml; projectname '%s'; description="projectname file"; test=test -n "$DISPLAY"; nametemplate=%s.gan
第 7 步:现在回到“share”文件夹,在 applications、doc、projectname、mime、pixmaps 的名称中创建五个文件夹。现在
现在回到“share”文件夹并在“projectname”文件夹中放入项目中的 [plugins 文件夹、eclipsito.jar、projectname、HouseBuildingSample.gan(这里,projectname 是可运行文件。)] 文件。这些插件文件夹、eclipsito.jar、projectname、HouseBuildingSample.gan 都是在你完成项目执行后创建的。
现在回到“share”文件夹,在“mime”文件夹中,将文件夹创建为“packages”,并在此文件夹中放入项目中的“projectname.xml”文件。现在回到“share”文件夹并在“pixmaps”文件夹中放置项目中的“projectname.png”文件。可以使用 .jpeg 或 jpg 代替扩展名 .png。
第8步:现在打开终端并打开项目所在的文件夹/路径(例如cd Desktop
):
write sudo dpkg -b <projectname>
将创建 Debian 文件。您可以使用该文件来安装它。
做 Debian 软件包时的错误:
可能有机会得到这样的错误
控制目录有错误的权限 555 (必须>=0755 <=0775)
要解决此类错误,请给出此命令
chmod 0755 <path of the project>
例如:chmod 0755 /home/vrmg15/Desktop/projectname/DEBIAN
如果您真的想要安装程序,我建议您自己编写,但我认为,您的意思是将其导出为可执行文件。
对于第二个选项,在 Eclipse 中执行以下操作:文件->导出...->Java/Runnable Jar 文件
您的启动配置将具有包含您的主要方法的类的名称。作为文件名,您应该使用 yourapplication.jar。
单击完成后,您可以通过双击该文件或在命令行上使用 java -jar yourapplication.jar 来执行该文件。
编辑:您需要导出的 jar 文件才能创建 debian 包。我对 debian 包没有任何经验,但我确信这必须在 eclipse 之外完成。
如果要使用单个终端命令启动程序,可以将以下脚本放入 /usr/bin
#!/bin/sh
java -jar /path/to/your/jarfile
并使其可执行 ( chmod +x /usr/bin/yourapp
)
你必须用很少的java文件制作一个jar文件