我刚刚完成了将应用程序从Windows移植到Linux的工作。
我必须创建该应用程序的安装程序。
该应用程序 不是 开源的=>我应该分发该应用程序的二进制文件(可执行文件,几个.so文件,帮助文件和图像)。
我不喜欢第一种方法(RPM和DEB软件包),因为我不想为不同的Linux发行版保留不同的软件包。
为Linux分发二进制应用程序的 最佳方法 是什么?
经过几次使用商业产品的经验,我认为最好的答案是对每个受支持的平台使用本机安装程序。任何其他事情都会给最终用户带来不愉快的体验,并且实际上,无论如何,您都必须在要支持的每个平台上进行测试,因此为每个人维护软件包并不是很大的负担。可以创建一个二进制文件,使其在所有平台上都能“正常工作”的想法,包括您从未听说过的二进制代码,实际上并不能很好地工作。
我的建议是选择一个或两个最初支持的平台(Red
Hat和Ubuntu将是我的建议),然后让用户需求推动创建其他安装软件包。也许知道您愿意支持其他平台,而费用不高,可以支付您在该平台上进行封装和测试所需的时间和精力。如果平台被证明是非常不同的,您可能需要为持续的支持收取更多费用。
哦,在这种情况下,我不能过分强调虚拟机的价值。您需要为您支持的每个平台构建VM,也许每个平台都可以构建多个VM,以便轻松测试不同的配置。
问题内容: Java是我选择的编程语言之一。尽管将应用程序分发给最终用户,但我总是遇到问题。 为用户提供JAR并不总是像我想要的那样友好,并且使用Java WebStart要求我维护Web服务器。 分发Java应用程序的最佳方法是什么?如果Java应用程序需要在用户计算机上安装工件,该怎么办?有没有好的Java安装/打包系统? 问题答案: 有多种解决方案,取决于你的发行要求。 只是用一个jar。这
这并不困难,但它让我质疑spring auth服务器是最好的选择,还是我应该使用Keycloak?
问题内容: 在应用程序中是否有任何良好的GUI作为小部件支持Pygame表面? 如果这不可能或不可行,那么哪个GUI工具箱具有最佳的图形组件?我希望通过SDL包装器保持快速渲染成为可能。 问题答案: 在这里,您将获得有关如何整合以及进行互动和互动的说明。 在我看来,最好的GUI工具包是wxPython(wxWidgets的绑定),它具有几乎包括OpenGL小部件在内的所有GUI小部件,并且SDL也
问题内容: 这对我来说是一个耻辱,但我不知道: 您应该使用克隆来复制阵列,因为通常这是最快的方法。 如Josh Bloch在此博客中所述:http : //www.artima.com/intv/bloch13.html 我一直都习惯。两种方法都是本机的,所以可能没有深入研究我不知道的库来源,为什么会这样。 我的问题很简单:为什么这是 最快的 方法? 有什么区别 ? 此处 说明了差异,但未回答为何
而用户则不太可能接触到捆绑。他们更关心应用程序,一个执行任务或解决问题的软件。通常,应用程序将使用多个包(例如,通过Import-Package导入)来执行其任务。 在OSGi世界中,什么是将这种关系正式化的最佳方法?一个示例性需求将是向用户显示应用程序(而不是包)的当前版本号这样简单的东西。如何发现此版本号? Eclipse有一个叫做“特性”的概念,但这不是OSGi的标准。 一种方法可能是拥有一
问题内容: 我有mongodb和NodeJs。通过mongoosejs完成连接。 开发Ajax Infinity滚动的最佳方法是什么?我应该使用极限和偏移量吗? 问题答案: 当您对数据集进行分页时,“跳过并限制”方法不是很有效。它实际上是Shlemiel Painter的算法 。 范围查询效率更高(当索引支持时)。例如,假设您正在显示推文。您的页面大小是20,您在第1000页上,并且想要加载第10