GCJ(GNU Compiler for Java)是一个发布webapp的可行工具吗?

Stu*_*son 13 java gcj

使用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!

小智 6

我不知道GCJ,但我公司成功使用Excelsior JET.我们还没有使用webapp(但是)它应该能够处理Sun JRE可以执行的任何操作.事实上,JET是Sun认证的Java实现.


Rya*_*n P 4

FWIW:我在 GCJ 上从来没有好运,我在使用它时遇到了很多问题,并且出现了一些晦涩的问题,这些问题花了很长时间才诊断给 GCJ 而不是我(我总是非常非常不愿意将事情归咎于外部)图书馆)。我会公开承认这件事发生在几年前,我再也不想靠近 GCJ 了。为了提供更多实质内容,这是我在学校时正在从事一个大部分琐碎的项目,因此在“企业级别”上,我对 GCJ 抱有一种健康的恐惧。