商业发行的Java许可
我正在考虑用Java编写一个程序,也许有一天我会尝试去销售。我是Java新手,所以我不得不问,我需要什么类型的工具/软件/等等(从开发到发布,再到用户机器上的用户友好安装),这些工具/软件/等等必须有许可证,以确保它们允许销售和封闭源代码,等等 我们是否应该假设用户已经运行了至少一个Java应用程序,因此在他们的机器上有一个相当新的Java版本?商业发行的Java许可,java,licensing,distribution,software-distribution,Java,Licensing,Distribution,Software Distribution,我正在考虑用Java编写一个程序,也许有一天我会尝试去销售。我是Java新手,所以我不得不问,我需要什么类型的工具/软件/等等(从开发到发布,再到用户机器上的用户友好安装),这些工具/软件/等等必须有许可证,以确保它们允许销售和封闭源代码,等等 我们是否应该假设用户已经运行了至少一个Java应用程序,因此在他们的机器上有一个相当新的Java版本? 另外,您是否对特定工具有任何建议,这些工具绝对适合此用途?这是一个很难回答的问题,因为用户的需求和偏好各不相同 但我要告诉你一个切入点。使用ECLIP
另外,您是否对特定工具有任何建议,这些工具绝对适合此用途?这是一个很难回答的问题,因为用户的需求和偏好各不相同 但我要告诉你一个切入点。使用ECLIPSE作为IDE来开发Java代码。这是一个开源软件,所以你不需要任何许可证。当你在做你的项目时,你需要各种各样的工具来做各种各样的事情。幸运的是,大多数基本功能都是作为eclipse插件实现的。您可以分别将它们添加到eclipse中
随着时间的推移,您将获得经验,您将拥有足够的知识来切换到必要的工具等进行开发,您可能需要一个IDE。排名靠前的是:
- Eclipse(大多数功能)
- IntelliJ(非免费)
- Netbeans(最容易学习,imo)
- 其他几个受欢迎程度低得多的人
我认为假设用户安装了Java是不安全的。很多人会,但是版本会有很大的差异,少数不这样的版本会导致问题。显然,这可能因您的目标受众(以及您对他们的控制程度)而异。对于跨平台分发,您可能希望了解launch4j: 此外,您可能还希望混淆和优化代码,因此可以使用ProGuard: 对于您的开发,请使用任何可用的开源工具,例如eclipse或netbeans,甚至是带有jdee的emacs 您不应该假设用户拥有Java,而是将Java的一个版本打包到您的应用程序中
对于安装,您可能需要搜索一些开源解决方案,我所知道的唯一一个是install4j,它是商用的 很少看到任何开发工具限制您使用使用它们创建的软件的方式。唯一的例外是库,这不是标准Java库的问题。工具、IDE等等——不管它们是否免费——都不会影响您如何分发代码 还有一些奇怪的例外,比如BitKeeper源代码控制软件,其许可证禁止任何人使用它来尝试创建可能与BitKeeper竞争的软件——这就是为什么我建议尽可能远离这件事以及背后的公司。最后,如果你想在法律上完全清楚,你必须雇佣一名律师,让他检查你在开发过程中使用的所有软件的许可证和EULA,因为类似的东西
一些特定的数据点:Java本身是可以的(包括编译器和库);Ant和Maven都很好;Eclipse和NetBeans也可以 我可以将Java打包到“install.exe”中吗?您应该将Java的安装作为安装过程的一部分。这并不意味着Java运行时应该“在”install.exe中,只从那里启动。从安装程序启动Java安装程序可能是最简单的。你应该检查用户是否安装了Java,如果他们确实安装了Java,那么你应该检查版本,这样如果你的打包版本比他们的旧,你就不会意外地降级他们。这似乎正是我想要的。谢谢我很确定BitKeeper最讨厌的一点是,他们的许可协议要求用户同意,无论他们是否在开发过程中使用BitKeeper,都不得以任何方式为BitKeeper创建任何类型的竞争产品。也许自从上次我读到关于这个主题的文章后,他们已经改变了。。。