我的一些同事相信,将构建工件提交到Subversion存储库是一个好主意。争论在于通过这种方式,在测试机器上的安装和更新很容易-只需“向上”!
我敢肯定,有人反对这种不良做法,但我能想到的只是la脚的,例如“占用更多空间”。什么是最好的杀手级理由不这样做?而我们应该采取哪些其他方法呢?
如果这有所不同,则用于Java代码。一切都是从Eclipse编译的(没有自动PDE构建)。
当我说添加构建工件时,我的意思是提交将如下所示:
"Added the new Whizbang feature"
M src/foo/bar/Foo.java
M bin/Foo.jar
每个代码更改都有相应的生成的jar文件。
在我看来,代码存储库应仅包含源代码以及编译该源代码所需的第三方库(在构建过程中也可以使用某些依赖项管理工具来检索第三方库)。生成的二进制文件不应与源代码一起检入。
我认为您遇到的问题是您没有适当的构建脚本。这就是为什么从源代码构建二进制文件会涉及诸如启动eclipse,导入项目,调整类路径等工作的原因。
如果有构建脚本,则可以使用以下命令来获取二进制文件:
svn update; ant dist
我认为不随源检入二进制文件的最重要原因是存储库的大小。这将导致:
另一个原因可能是:
我认为您如上所述的方法也会带来很多开销。如果开发人员忘记更新相应的jar文件怎么办?
使用称为二进制的数据结构来存储大量原始数据。 二进制文件以比列表或元组更加节省空间的方式存储数据,并且运行时系统针对二进制文件的有效输入和输出进行了优化。 二进制文件以整数或字符串的顺序编写和打印,用小于或大于括号的双精度括起来。 以下是Erlang中二进制文件的示例 - 例子 (Example) -module(helloworld). -export([start/0]). start()
有的时候,需要将对代码的改动以补丁文件的方式进行传递,最终合并入版本库。例如直接在软件部署目录内进行改动,再将改动传送到开发平台。或者是因为在某个开源软件的官方版本库中没有提交权限,需要将自己的改动以补丁文件的方式提供给官方。 关于补丁文件的格式,补丁的生成和应用在第3篇第20章“补丁文件交互”当中已经进行了介绍,使用的是git format-patch和git am命令,但这两个命令仅对Git库
下面是一个上传二进制文件的例子,WebService类的代码如下: package service; import java.io.InputStream; import java.io.OutputStream; import java.io.FileOutputStream; import javax.activation.DataHandler; public class
一个插件是一个简单的实现了插件接口的类.Gradle提供的核心插件作为其分布的一部分,因此,你需要做的仅仅是应用上述的插件.然而,非核心二进制插件需要到构建类路径才能应用它们.这可以以多种方式,包括以下方式实现: 定义插件作为构建脚本中内嵌类的声明. 定义插件为在项目中buildSrc目录下的一个源文件.(参见Section 62.4, “Build sources in the buildSrc
问题内容: 我有一个带有二进制数据的字符串(1110100),我想取出文本以便可以打印它(1110100将打印“ t”)。我尝试了这一点,它类似于我用来将文本转换为二进制的东西,但是根本不起作用: 任何更正或建议将不胜感激。 问题答案: 你可以使用基数2(二进制)将二进制字符串转换为整数: 然后,如果你希望将相应的字符作为字符串:
问题内容: 请告诉我最好/最快的方法: 1)将很小的二进制文件加载到内存中。例如图标; 2)加载/读取大小为512Mb +的非常大的二进制文件。也许我必须使用内存映射的IO? 3)当您不想考虑大小/速度而只能做的事情时,通常选择:将所有字节读入内存? 谢谢!!! 问题答案: 对于内存映射文件,java有一个nio包:Memory Mapped Files 检出小文件的字节流类:字节流 检出较大文件