最后一句话最靠谱 在 2013-2-25 下午6:13,"Weinan Li" l.weinan@gmail.com写道:
-- Weinan Li Sent with Sparrow (http://www.sparrowmailapp.com/?sig)
On Monday, February 25, 2013 at 6:08 PM, Tommy He wrote:
我指的的是现在 fedora 中的 java 软件包硬性依赖 openjdk 啦。即使系统中已经安装了 oracle java rpm 也会在安装时装上 openjdk。
明白你说的意思了,是这样的,openjdk是会被装上的。
若是有虚包 java 的存在,那么就需要通知 fedora java 应用的打包者以后在 spec 里不能写依赖 openjdk 了,要写依赖
java。
在RHEL里面是这样的,openjdk不会被下载下来,Fedora是默认安装openjdk了。 归根到底yum的安装行为取决于Requires/Provides关系,Requires/Provides关系取决于spec怎么写,spec怎么写取决于领导战略制订 ╮(╯_╰)╭
2013/2/25 Weinan Li <l.weinan@gmail.com (mailto:l.weinan@gmail.com)>:
Fedora一直都可以选择java环境啊,哪个包必须依赖SUN JDK?
我倒是知道几个,不过是因为openjdk的bug造成的所以需要使用sun jdk才能正常运行。
甚至现在还有更方便环境切换工具:https://rhn.redhat.com/errata/RHEA-2011-0727.html
-- Weinan Li Sent with Sparrow (http://www.sparrowmailapp.com/?sig)
On Monday, February 25, 2013 at 6:01 PM, Tommy He wrote:
喏,若是 Fedora (实际上是所有 RPM 系的发行版)和 Oracle 协商了 Java 打包规范,那么不能硬性依赖某个特定运行时环境就是规范之一了,打包者不会说“偶没有问题”这种话啦。
Weinan Li 说的虚包的确是个可行的解决方法,Fedora 有推行的可能性。不过也需要 Oracle 那边配合才能有效解决。
话说 RPM 现在支持从一个包生成虚包么?Oracle 那边是决计不可能提供一个单独 java.rpm 的虚包下载的。意味着需要在安装 oracle java rpm 之后生成一个 java rpm 虚包并安装。
2013/2/25 杜宏羽 <dongfengweixiao@gmail.com (mailto:
dongfengweixiao@gmail.com)>:
假如这样,他也许会说,我没有问题,设置下可以解决这个问题。 在 2013-2-25 下午5:50,"Tommy He" <lovenemesis@fedoraproject.org(mailto:
lovenemesis@fedoraproject.org)>写道:
这种情况可以给打包者发 Bug Report 咯~
2013/2/25 杜宏羽 <dongfengweixiao@gmail.com (mailto:
dongfengweixiao@gmail.com)>:
> 并没有说fedora 预装或者是说源中包含有闭源的JAVA
。通过设置改变这样的依赖也是知道的。但是本身在打包的时候人为导致产生这样奇怪的强依赖很奇怪。 > 在 2013-2-25 下午5:45,"Weinan Li" <l.weinan@gmail.com (mailto:
l.weinan@gmail.com)>写道:
> > > - 并不是每一个Linux发行版本都严格遵守了GPL(Linus骂大街主要理由之一) > > - > > > >
Oracle的policy不允许Fedora包含它的jdk,在Windows下面安装也需要手工下载,现在MacOS的XCode安装Java也有一个确认后下载的过程了。
> > - 打包时的依赖关系可以BR一个虚包:BuildRequire java > > 不同的包都可以Provide它,OpenJDK或是JDK的RPM spec只要Provides: java 就可以。 > > - java版本间的切换可以使用alternatives: > > http://linux.about.com/library/cmd/blcmdl8_alternatives.htm > > - 俺有不少同事在OpenJDK开发组,既然jbossas在2012年纳入进了Fedora,那么Red > > >
Hat的战略必然是提供给用户一个完整的Java平台,中间件是其中之一,此外还有以openshift为代表的PaaS平台(这个在github上面开源,以ruby代码为主)。不过也有某社区领导说在Linux上面打包java项目是浪费时间,因为java项目一般是直接下载部署比较方便,所以口水仗也是很多的。。。
> > > > -- > > Weinan Li > > Sent with Sparrow (http://www.sparrowmailapp.com/?sig) > > > > > > On Monday, February 25, 2013 at 5:34 PM, Tommy He wrote: > > > > > 这个是理念问题,Fedora 不允许主仓库里的软件在打包时依赖某闭源产品,况且 Oracle 的 Java 也不在
Fedora 仓库里。
> > > > > > 至于能不能在打包时依赖关系填写成动态的,比如只是检测某个 Oracle Java 和 OpenJDK > > > 共用的库是否存在?或者说是否有个可靠、简便的方式去检测系统中是否安装了 Java ? > > > > > > 据我所知似乎木有哦…… > > > > > > 2013/2/25 Christopher Meng <cickumqt@gmail.com (mailto:
cickumqt@gmail.com) (mailto:
> > cickumqt@gmail.com (mailto:cickumqt@gmail.com))>: > > > > 因为 Fedora 不想惹上麻烦。 > > > > > > > > > > > > > > > > *Yours sincerely,* > > > > *Christopher Meng* > > > > > > > > Got problems with Windows? - ReBoot > > > > Got problems with Linux? - Be Root > > > > > > > > Ambassador/Contributor of Fedora Project and many others. > > > > http://cicku.me > > > > > > > > > > > > 2013/2/25 杜宏羽 <dongfengweixiao@gmail.com (mailto:
dongfengweixiao@gmail.com) (mailto:
> > dongfengweixiao@gmail.com (mailto:dongfengweixiao@gmail.com
))>
> > > > > > > > > 但是你可以自己下载安装。一般来说只要是满足了一个JAVA
的环境就可以,而没有必要限定在只能使用openJAVA啊。
> > > > > ubuntu和arch 都是如此操作的。 > > > > > 在 2013-2-25 下午5:21,"Christopher Meng" <
cickumqt@gmail.com (mailto:cickumqt@gmail.com)(mailto:
> > > > > > > > > > > > > > > > > > > > > > cickumqt@gmail.com (mailto:cickumqt@gmail.com))>写道: > > > > > > > > > > > Oracle 的 JAVA 是不可能出现的。 > > > > > > > > > > > > > > > > > > > > > > > > *Yours sincerely,* > > > > > > *Christopher Meng* > > > > > > > > > > > > Got problems with Windows? - ReBoot > > > > > > Got problems with Linux? - Be Root > > > > > > > > > > > > Ambassador/Contributor of Fedora Project and many
others.
> > > > > > http://cicku.me > > > > > > > > > > > > > > > > > > 2013/2/25 杜宏羽 <dongfengweixiao@gmail.com (mailto:
dongfengweixiao@gmail.com) (mailto:
> > dongfengweixiao@gmail.com (mailto:dongfengweixiao@gmail.com
))>
> > > > > > > > > > > > > rt > > > > > > > 对于这个问题我一直都很不解 > > > > > > > 为什么fedora 在包的依赖里面需要定义JAVA 环境完全的等于open JAVA
呢?就算是使用了乌龟壳的JAVA
> > > > > > > 也不行?!而其他的发新版,诸如ubuntu,arch都不会如此。 > > > > > > > -- > > > > > > > Fedora中文郵件列表: > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > https://admin.fedoraproject.org/mailman/listinfo/chinese > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > > > > Fedora中文郵件列表: > > > > > > > > > > > > > > > > > > > > > > > > https://admin.fedoraproject.org/mailman/listinfo/chinese > > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > > > Fedora中文郵件列表: > > > > > > > > > > > > > > > > > > https://admin.fedoraproject.org/mailman/listinfo/chinese > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > > Fedora中文郵件列表: > > > > > > > > > > > >
https://admin.fedoraproject.org/mailman/listinfo/chinese > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > Take a Deep Breath out of Windows > > > > > > https://fedoraproject.org/wiki/User:Lovenemesis > > > -- > > > Fedora中文郵件列表:
https://admin.fedoraproject.org/mailman/listinfo/chinese
> > > > > > > > > > > > > -- > > Fedora中文郵件列表:
https://admin.fedoraproject.org/mailman/listinfo/chinese
> > > > > -- > Fedora中文郵件列表:
https://admin.fedoraproject.org/mailman/listinfo/chinese
>
-- Take a Deep Breath out of Windows
https://fedoraproject.org/wiki/User:Lovenemesis
Fedora中文郵件列表:
https://admin.fedoraproject.org/mailman/listinfo/chinese
-- Fedora中文郵件列表:
https://admin.fedoraproject.org/mailman/listinfo/chinese
-- Take a Deep Breath out of Windows
https://fedoraproject.org/wiki/User:Lovenemesis
Fedora中文郵件列表:
https://admin.fedoraproject.org/mailman/listinfo/chinese
-- Fedora中文郵件列表:https://admin.fedoraproject.org/mailman/listinfo/chinese
-- Take a Deep Breath out of Windows -- Fedora中文郵件列表:https://admin.fedoraproject.org/mailman/listinfo/chinese
-- Fedora中文郵件列表:https://admin.fedoraproject.org/mailman/listinfo/chinese