【问题标题】:which packages are compiled into gnumail-providers.jar, and what are JAR the dependencies?哪些包被编译到 gnumail-providers.jar 中,JAR 的依赖关系是什么?
【发布时间】:2013-12-22 11:55:52
【问题描述】:

为了编译gnu.mail.providergnu.mail.treeutil gnumail-providers.jar 有什么依赖关系,应该编译什么包?

更重要的是,这些是进入这个 JAR 的包吗? 并且,正确构建这个 JAR 需要在类路径中包含什么内容?

以下是我认为 GNU 正在做的事情。 GNU 使他们所有的项目都从 make 构建,所以对于 classpathx instructions 是:

svn co svn://svn.savannah.gnu.org/classpathx/trunk classpathx cd
classpathx/activation ./configure && make && sudo make install cd
../inetlib ./configure && make && sudo make install cd ../mail ./configure
&& make && sudo make install

1.) 构建 gnumail-providers.jar 的 JAR 依赖项是什么?

2.) 应该编译哪些源代码包来构建gnumail-providers.jar

看看 Ubuntu 做了什么,apt-get install libgnuinet-java libgnujaf-java libgnumail-java 安装:

/usr/share/java/inetlib.jar
/usr/share/java/activation.jar
/usr/share/java/gnumail-providers.jar
/usr/share/java/gnumail.jar

这有点奇怪,因为libgnumail-java 安装了gnumail.jargnumail-providers.jar,我不太清楚为什么它们是分开的,以及依赖关系是什么。

jar -tf /usr/share/java/gnumail.jar 显示包 gnu.mailjavax.mail,所以 JAR 最多仅限于这些包的源代码?

或者,

jar -tf /usr/share/java/gnumail-providers.jar 更具体,gnu.mail.providersgnu.mail.treeutil,看起来都有些奇怪。

为什么一些,而不是全部,gnu.mail 包被构建到与主 JAR 分开的 JAR 中? 覆盖的(如果这是正确的术语)javax.mailgnu.mail 打包在同一个 JAR 中,但为什么呢?

gnu.mail 被拆分并打包成两个单独的 JAR 似乎很不寻常,javax.mailgnu.mail 结尾而不是在自己的 JAR 中的方式也是如此。

从广义上讲,这是打包 JAR 的正常方式吗?

在更实际的意义上,为了将gnu.mail.providergnu.mail.treeutil 编译成 gnumail-providers.jar 有哪些依赖关系,哪些包需要编译?

一个包层次结构的一个子集被编译成一个 JAR 并与它的兄弟并列,这似乎很奇怪,但这是怎么回事?

【问题讨论】:

    标签: java ant makefile classpath gnu


    【解决方案1】:

    好的,我在这里找到了源代码:

    然后阅读installation instructions 并且此版本不支持ANT:

    蚂蚁构建

    一个简单的 Ant 构建文件包含在没有 GNU Make 的平台上 安装。此构建文件不受官方支持,可能不提供 在标准的基于 autotools 的安装过程中可用的选项。

    我看了一眼,build file 只负责构建“activation.jar”文件。

    【讨论】:

    • 这是svn.sv.gnu.org/viewvc/trunk/mail/…吗!?我看到<target name='javamail.providers' depends='javamail.providers.init,smtp.ok,imap.ok,pop3.ok,nntp.ok,mbox.ok,maildir.ok'/> 看起来非常非常有前途!
    • 这是另一个目录中的另一个构建文件。如果此代码通常是使用“make”构建的,那么使用 ANT 构建很难对我来说并不奇怪......我建议联系拥有该代码的开发人员。
    猜你喜欢
    • 2012-01-11
    • 1970-01-01
    • 2012-11-11
    • 1970-01-01
    • 2012-07-04
    • 1970-01-01
    • 2019-09-25
    • 1970-01-01
    • 2022-01-03
    相关资源
    最近更新 更多