首先,我没有这样做的经验。但是就像任何一个好计划的开始一样,我有问题需要解决,所以我愿意学习。
所以你们中的许多人可能已经熟悉pdftk,它是处理各种与pdf相关的任务的便利实用工具。据我所知,除了我需要的库/扩展(可能是它仍然存在的唯一原因)之外,这些功能中的大多数都有更新、更轻的库/扩展:将表单数据文件(FDF和XFDF)与表单PDF合并,并获得一个新文件作为输出。
问题是我的服务器没有gcj,这是构建/编译pdftk的基础。我不知道是因为我在Solaris上还是因为其他系统管理员级别的原因,但我不会很快得到GCJ。据我所知,还没有为Solaris预编译的二进制文件。
因此,我认为可以通过Javac直接重写make文件和C代码,以便直接导入Java库(非常古老的ITEXT版本)。
但我不知道从哪里开始。我只知道:
当我完成时,我想要一个二进制文件,这样就不会在每次使用时都需要Java VM。
当前应用程序使用gcj。
所以我的第一个想法是“哦,这很简单,我可以用其他基于C的方法来调用这些类”,但是我没有找到一个简单的方法来实现这一点,而是在各种角度上找到了大量的冗长的文章,这些文章都可以接近,等等。
然后我在Sun网站找到了一个关于如何在Java类中调用其他语言(如C)的页面。但是这种方法的问题是:
我得写个包装纸
我可能会更好地跳过这一部分,用Java编写整个过程。
如果我能用已经存在的类导入类,我还没有准备好。
我不清楚是否可以在最后编译和获取二进制文件,或者每次我都被困在Java中。
我再次为我的无知道歉。我只需要一些建议和例子,说明如何用Java直接替换GCJ依赖C代码。
当然,如果我问其中一个“如果我们能做到,我们就已经富有了”类型的问题,请告诉我。