如何将自定义行添加到MANIFEST.MF? [英] How to add custom lines to MANIFEST.MF?

查看:507
本文介绍了如何将自定义行添加到MANIFEST.MF?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

使用Build.scala将自定义键值对添加到MANIFEST.MF似乎不起作用.这是我的代码:

Adding custom key-value-pairs to the MANIFEST.MF using Build.scala seems not to work. Here is my code:

import sbt._
import Keys._
import java.util.Date

object Build extends Build {

  packageOptions in (Compile, packageBin) +=
    Package.ManifestAttributes( "Build" -> "true" )

}

当我添加时:

packageOptions in (Compile, packageBin) +=
  Package.ManifestAttributes( "Sign" -> "true" )

对于我的build.sbt,只有Sign到达我的MANIFEST.MF.有什么想法吗?

To my build.sbt then only Sign reaches my MANIFEST.MF. Any thoughts?

推荐答案

我认为您可能想要这样的东西(请注意将manifestSettings添加到项目的设置中).

I think you may want something like this (note the manifestSettings added to the settings of the project).

import sbt._
import Keys._
import java.util.Date
import sbt.Package.ManifestAttributes

object MyBuild extends Build {

  lazy val manifestSettings = Seq(
    packageOptions in (Compile, packageBin) += 
         Package.ManifestAttributes( "Build" -> "true" )
  )

  lazy val root = Project(id = "root", base = file(".")).settings(manifestSettings: _*)

}

然后,您应该可以调用package并使用带有附加清单条目的jar.

Then you should be able to call package and have the a jar with the extra manifest entry.

要获取("Buid" -> <current time>)manifestSettings应该是

lazy val manifestSettings = Seq(
  packageOptions in (Compile, packageBin) += 
           Package.ManifestAttributes( "Build" -> new Date().toString() )
)

这篇关于如何将自定义行添加到MANIFEST.MF?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆