gpt4 book ai didi

scala - 打包方法在 Buildr 中无效

转载 作者:行者123 更新时间:2023-12-02 07:53:02 24 4
gpt4 key购买 nike

我正在尝试将 scala 项目打包到 jar 中,并使用 Buildrs package() 方法将属性写入 list 。

该包似乎对 Manifest 没有影响。这是构建文件:

VERSION_NUMBER = "1.0.0"
GROUP = "Green"
COPYRIGHT = "Green CopyRight"

require 'buildr/scala'

Buildr::Scala::Scalac::REQUIRES.library = '2.8.0-SNAPSHOT'
Buildr::Scala::Scalac::REQUIRES.compiler = '2.8.0-SNAPSHOT'
Java.classpath.reject! { |c| c.to_s.index('scala') }
Java.classpath << Buildr::Scala::Scalac::REQUIRES

ENV['USE_FSC'] = 'yes'

repositories.remote << "http://www.ibiblio.org/maven2/"

desc "The Green project"
define "Green" do
project.version = VERSION_NUMBER
project.group = GROUP
package(:jar).with :manifest=>manifest.merge(
'Main-Class'=>'com.acme.Main',
'Implementation-Vendor'=>COPYRIGHT
)
end

这是生成的 list :

Build-By: brianheylin
Build-Jdk: 1.6.0_17
Implementation-Title: The Green project
Implementation-Version:
Implementation-Vendor:
Main-Class: green.GreenMain
Manifest-Version: 1.0
Created-By: Buildr

请注意,Implementation-VendorMain-Class 属性都没有被覆盖。我按如下方式运行 Buildr:

jruby -S buildr clean package

我正在使用 jRuby 1.4.0 和 Buildr 1.3.5(作为 gem 安装)。有人对为什么会出现这种情况有任何想法吗?

最佳答案

我使用 buildr 1.3.5 + Ruby 1.8.6 快速测试了这一点,并得到了正确的 list 。我对构建文件做了一些小更改,这些更改似乎对于您的明显问题来说并不重要。这是我的测试构建文件:

ENV['JAVA_HOME'] = 'C:\Java\32\jdk1.6.0_17'

VERSION_NUMBER = "1.0.0"
GROUP = "Green"
COPYRIGHT = "Green CopyRight"

require 'buildr/scala'

desc "The Green project"
define "Green" do
project.version = VERSION_NUMBER
project.group = GROUP
package(:jar).with :manifest=>manifest.merge(
'Main-Class'=>'com.acme.Main',
'Implementation-Vendor'=>COPYRIGHT
)
end

这是最终的 list :

Implementation-Vendor: Green CopyRight
Manifest-Version: 1.0
Build-By: Travis
Created-By: Buildr
Build-Jdk: 1.6.0_17
Implementation-Title: The Green project
Implementation-Version:
Main-Class: com.acme.Main

抱歉,我无法告诉您为什么它对我有用,但也许我的帖子会产生一些想法。

关于scala - 打包方法在 Buildr 中无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2076784/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com