我正在考虑使用Java编写一个我可能会尝试出售的程序。我是Java的新手,所以我不得不问,我需要哪些类型的工具/软件/等(从开发,分发到用户机器上的用户友好安装),这些工具/软件必须考虑确保有许可证才能确保他们允许销售和封闭的源代码等?
我们是否应该假设用户已经运行了至少一个Java应用程序,因此他们的计算机上有一个相当新的Java版本?
另外,您对特定适用于此目的的特定工具有什么建议吗?
答案 0 :(得分:2)
对于开发,您可能需要一个IDE。首选是:
对于免费安装程序,我已经获得了IzPack的最佳体验,但还有其他可用的。同样,要转换为.exe以便轻松启动,我建议使用Launch4J。
我认为假设用户安装了Java是不安全的。许多人会这样做,但版本会有相当广泛的变化,少数不会发生变化会导致问题。显然,这可能会根据您的目标受众(以及您对他们的控制程度)而有所不同。
答案 1 :(得分:2)
对于跨平台分发,您可能需要查看launch4j:http://launch4j.sourceforge.net/
此外,您可能还想对代码进行模糊处理和优化,因为您可以使用ProGuard:http://proguard.sourceforge.net/
对于您的开发,请使用任何可用的开源工具,例如eclipse或netbeans,甚至是带有jdee的emacs。
您不应该假设用户拥有Java,使用您的应用程序打包java版本。
对于安装,您可能想要搜索一些开源解决方案,我唯一知道的是install4j,它是商业解决方案。 http://www.ej-technologies.com/products/install4j/features.html
答案 2 :(得分:2)
很少见到任何限制您使用它们创建的软件的开发工具。唯一的例外是库,这对标准Java库来说不是问题。工具,IDE等 - 无论它们是否免费 - 都不会影响您分发代码的方式。
有一些奇怪的例外,比如BitKeeper源代码控制软件,其许可证禁止任何人使用它来尝试创建可与BitKeeper竞争的软件 - 这就是为什么我建议保持远离事物的原因,以及公司背后,尽可能。最后,如果你想要在法律上绝对清楚,那么你必须雇用一名律师并让他通过许可证和EULA来处理你将在开发过程中使用的所有软件,因为这样的事情。 / p>
一些特定的数据点:Java本身是可以的(编译器和库); Ant和Maven都没关系;而Eclipse和NetBeans都可以。
答案 3 :(得分:1)
这是一个很难回答的问题,因为用户的要求和偏好彼此不同。
但我会告诉你一个切入点。使用ECLIPSE作为IDE来开发Java代码。它是一个开源的,因此您不需要任何许可证。当您处理项目时,您将需要各种其他工具来执行各种操作。幸运的是,大多数基本功能都是作为eclipse的插件实现的。你可以单独将它们添加到日食中。
随着时间的推移,您将获得经验,并且您将获得足够的知识,可以使用必要的工具等等。