在完成更改后,我必须为 Jitsi SIP Communicator 创建安装程序。我在网上搜索了一些步骤,如下所示:
软件要求
- 赛格温: 包含库“make、gcc 和 g++” http://cygwin.com/setup.exe
- 明威: (只有 gcc,没有 g++)(使用安装文件 .zip,考虑到 build.xml 正在寻找子文件夹 x86 y x64 到 MinGW 根文件夹) http://sourceforge.net/projects/mingw/files/latest/download 安装在 C:\MinGW\x86
- 将mingw-make.exe复制到make.exe(文件夹C:\MinGW\x86{-}\bin)
- bzip2: (在本例中为 v1.0.5):安装在 C:\MinGW\bzip2 http://gnuwin32.sourceforge.net/downlinks/bzip2.php
- xz: (本例中为 v5.0.3):在 C:\MinGW\xz 中解压 http://tukaani.org/xz/xz5.0.3windows.zip
- 为 win32 制作: (在本例中为 v3.8.1) http://gnuwin32.sourceforge.net/downlinks/make.php
- wix35-二进制文件: (本例中为 v3.5):在 C:\Program Files\WiX 中解压
- 使用二进制文件 (wix35-binaries.zip),而不是 WiX .msi 安装程序。 http://wix.codeplex.com/releases/view/60102#DownloadId=204418
- Ant : (本例中为 v1.8.3):在 C:\apache-ant-1.8.3 中解压 http://ant.apache.org/bindownload.cgi
- jdk1.6: (在本例中为 v1.6.0_31)
环境变量:
- 导出变量包含:
- ANT_HOME=C:\apache-ant-1.8.3
- JAVA_HOME=C:\Program Files (x86)\Java\jdk1.6.0_31
- 添加到路径: %ANT_HOME%\bin C:\MinGW\bin C:\cygwin\bin C:\MinGW\msys\1.0 C:\Program Files\WiX C:\Program Files (x86)\Gnuwin32\Make\bin
其他任务:
- 编辑“installers.properties”,为要添加到安装程序和/或 JRE(.zip 或文件夹)文件的 JRE 文件添加路径。
- 编译项目。
执行构建脚本:
- 启动 Cygwin 终端
- 转到/cygdrive/.../{dir_root Jitsi} -执行: ant build-installation-wix(为 windows x86 创建安装程序) ant build-installation-wix-64(为 windows x64 创建安装程序) ant build-installation-linux(为 linux 创建安装程序) ant dmg(为 MacOSX 创建安装程序,仅在 MacOSX 上运行
但是当我在cygwin上执行上面给出的命令时,我发现了以下错误:
build-installation-wix-base: [propertyfile] Creating new property file: D:\javaprojects\jitsi\release\windows\versionupdate.properties [mkdir] Created dir: D:\javaprojects\jitsi\release\windows\tmp\light [exec] Makefile:40: * target pattern contains no `%'. Stop.
BUILD FAILED D:\javaprojects\jitsi\resources\install\build.xml:302: The following error occurred while executing this line: D:\javaprojects\jitsi\resources\install\build.xml:403: exec returned: 2
请提出解决方案。
最佳答案
我遇到了与您提到的相同的问题。我终于尝试了自己,并在 Windows 中构建了 Jitsi,包括 32 位和 64 位版本。
我没有用Cygwin,只是用了Mingw+Msys。
这是我做的:
- 在 C:/mingw/x86 文件夹中安装 Mingw + Msys
- 安装 Ant
- 在 c:/mingw/bzip2 中安装 BZip2
- 在 c:/mingw/xz 中安装 xz
- 安装Wix,我安装在C:/win35。更改resources/install/build.xml中wix安装路径的位置 6) 删除mingw/msys/1.0/bin中的make.exe文件,将mingw/bin/mingw-make.exe重命名为make.exe
我不得不稍微更改 Makefile,这是我所做的更改:
1) 删除目标目录初始化中的引号:
- target.dir := "$(TARGET_DIR)"
- cygwin.target.dir := "$(TARGET_DIR)"
+ target.dir := $(TARGET_DIR)
+ cygwin.target.dir := $(TARGET_DIR)
2) 将单行回显更改为多行:
- echo.exe -e '#define PRODUCTNAME "$(PRODUCTNAME)"\n#define PRODUCTBUILDVERSION "$(PRODUCTBUILDVERSION)"\n#define
+ echo #define PRODUCTNAME "$(PRODUCTNAME)" > $(cygwin.target.dir)/config.h
+ echo #define PRODUCTBUILDVERSION "$(PRODUCTBUILDVERSION)" >> $(cygwin.target.dir)/config.h
+ echo #define TARGET_BASENAME "$(TARGET_BASENAME)" >> $(cygwin.target.dir)/config.h
+ echo #define TARGET_BASENAME_EXE "$(TARGET_BASENAME).exe" >> $(cygwin.target.dir)/config.h
3) 在 resources/install/installers/properties - 指定安装 IzPack 的位置,并给出 JRE 的 zip 文件的位置。当我使用 JRE 的安装文件时,构建没有将 JRE 捆绑在一起”
+windows.jre.zip=C:\\JavaInstallers\\jre32.zip
+windows.jre64.zip=C:\\JavaInstallers\\jre64.zip
最后,我写了一个简单的批处理脚本来构建安装程序:
set PATH=C:\apps\apache-ant-1.9.1\bin;C:\MinGW\bin;C:\MinGW\msys\1.0\bin;C:\wix35
set ANT_HOME=C:\apps\apache-ant-1.9.1
set JAVA_HOME=C:/Program Files (x86)\Java\jdk1.7.0_17
set BZ2_HOME=c:/mingw/bzip2_x86
set LZMA_HOME=C:/mingw/xz
set MINGW_HOME=C:/mingw
start /B /LOW /WAIT ant build-installation-wix
这是 32 位版本。
但是对于 64 位,我必须自己从源代码构建 bzip2。这可以通过下载 Bzip2 源代码并通过 mingw 编译来完成。这是一件容易的事。其余步骤完全相同。
请尝试一下,如果对您有用,请告诉我。
关于java - Jitsi SIP Communicator 的安装程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14495465/