使用GCJ发布服务器端应用程序是否真的可行?WEBAPPS?
我的老板确信将我的(我的)webapp 编译成二进制可执行文件是个好主意.(然后,他再次喜欢用他能理解的眨眼灯光的漂亮,小巧的简单事物.)他本能地认为没有问题,而我只能看到无穷无尽的一系列问题和退化.一旦我开始与他谈论我们平台的复杂性,以及更深入的字节代码,JVM,库,操作系统之间的差异,处理器架构等......嗯......他的眼睛茫然,他微笑着他已经说清楚他认为我是幼稚的抵抗力.
为什么他想要一个魔法可执行文件?他看到了几个"好处":
如果它是二进制可执行文件,则很难进行逆向工程并绕过任何许可.管理层始终担心这种情况正在发生,即使我们出售给通常不会使用服务器软件作弊的大型企业.
有下载这个神奇的可执行文件,运行它,一切正常的愿景.(不再派我去做客户安装,这不常见.)
所以,我已经完成了必须的20分钟谷歌搜索,现在我在这里.
关于我的应用程序的一些背景知识:
它是由什么组成的:
Java 6(Sun的JVM)
AspectJ 1.6
雄猫6
Hibernate 3
春天2
另外二十几个支持jar文件
它能做什么
流媒体CMS
性能敏感
部署在Linux,Solaris,Windows(以及在Mac上开发)
正如你可能会收集到的那样,我对这种"将Java编译为本机代码"的事情持高度怀疑态度.这听起来像是Mono(Linux上的VB)早在2000年.但我是否过于悲观?它可行吗?我是否应该花时间(几天甚至几周)来试试这个?
还有一个类似的线程(用于生成.exe文件的Java编译器选项),但它有点过于简单,链接过时了,并没有真正面向服务器端问题.
亲爱的SOpedians,您的知情意见将受到高度重视!TIA!
我不知道GCJ,但我公司成功使用Excelsior JET.我们还没有使用webapp(但是)它应该能够处理Sun JRE可以执行的任何操作.事实上,JET是Sun认证的Java实现.