编译环境:ubuntu14.04/JDK7

步骤:

1、svn检出源代码(两种方式)

svn co --depth empty https://github.com/Red5/red5-server (最新版)
svn checkout http://red5.googlecode.com/svn/java/server/trunk/ red5-read-only(我使用的是这个1.0.2-RC4版)

2、编译并安装工程到mvn的本地库/home/walfred/.m2/repository/org/red5/red5-server/1.0.2-RC4,跳过test

mvn -Dmaven.test.skip=true install

编译结果例如以下:

[INFO] Installing /home/walfred/wmw/red5-google/red5-read-only/target/red5-server-1.0.2-RC4-sources.jar to /home/walfred/.m2/repository/org/red5/red5-server/1.0.2-RC4/red5-server-1.0.2-RC4-sources.jar
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 10:21.353s
[INFO] Finished at: Wed Oct 15 09:34:22 CST 2014
[INFO] Final Memory: 16M/40M
[INFO] ------------------------------------------------------------------------

进去看看都有什么:

walfred@walfred-VirtualBox:~/wmw/red5-google/red5-read-only$ ls
build.properties license.txt pom.xml src target
walfred@walfred-VirtualBox:~/wmw/red5-google/red5-read-only$ cd target/
walfred@walfred-VirtualBox:~/wmw/red5-google/red5-read-only/target$ ls
apidocs <span style="color:#ff0000;">red5-server-1.0.2-RC4-bootstrap.jar</span>
archive-tmp <span style="color:#ff0000;">red5-server-1.0.2-RC4.jar</span>
classes red5-server-1.0.2-RC4-javadoc.jar
generated-sources <span style="color:#ff0000;"> red5-server-1.0.2-RC4-server.tar.gz</span>
javadoc-bundle-options red5-server-1.0.2-RC4-server.zip
lib red5-server-1.0.2-RC4-sources.jar
maven-archiver test-classes

red5-server-1.0.2-RC4-server.tar.gz 这个就是我们编译后的red5-server了,先解压看一下:

walfred@walfred-VirtualBox:~/wmw/red5-google/red5-read-only/target/red5-server-1.0.2-RC4$ ls -l
总用量 852
drwxrwxr-x 2 walfred walfred 4096 10月 15 09:35 conf
drwxrwxr-x 2 walfred walfred 4096 10月 15 09:35 lib
-rw-rw-r-- 1 walfred walfred 1324 10月 15 09:15 license.txt
drwxrwxr-x 2 walfred walfred 4096 10月 15 09:35 plugins
-rw-rw-r-- 1 walfred walfred 1421 10月 15 09:21 red5.bat
-rw-rw-r-- 1 walfred walfred 168 10月 15 09:21 red5-debug.bat
-rwxr-xr-x 1 walfred walfred 220 10月 15 09:33 red5-debug.sh
-rw-rw-r-- 1 walfred walfred 1383 10月 15 09:21 red5-highperf.bat
-rwxr-xr-x 1 walfred walfred 622 10月 15 09:33 red5-highperf.sh
-rw-rw-r-- 1 walfred walfred 21745 10月 15 09:33 red5-server-bootstrap.jar
-rw-rw-r-- 1 walfred walfred 793004 10月 15 09:33 red5-server.jar
-rwxr-xr-x 1 walfred walfred 1670 10月 15 09:33 red5.sh
-rw-rw-r-- 1 walfred walfred 308 10月 15 09:21 red5-shutdown.bat
-rwxr-xr-x 1 walfred walfred 344 10月 15 09:33 red5-shutdown.sh
drwxrwxr-x 6 walfred walfred 4096 10月 15 09:35 webapps

执行red5.sh

[INFO] [Launcher:/installer] org.red5.server.Context - Setting parent bean factory as core
[INFO] [Launcher:/installer] org.red5.server.scope.WebScope - Set server [Server@1e3695map[[empty]]]
[INFO] [Launcher:live] org.red5.server.scope.WebScope - Set server [Server@1e3695map[[empty]]]
[INFO] [Launcher:vod] org.red5.server.scope.WebScope - Set server [Server@1e3695map[[empty]]]
[INFO] [Launcher:/] org.red5.server.scope.WebScope - Set server [Server@1e3695map[[empty]]]
[INFO] [Launcher:/installer] org.red5.server.Server - Add mapping global: default host: localhost context: installer
[INFO] [Launcher:live] org.red5.server.Server - Add mapping global: default host: context: live
[INFO] [Launcher:vod] org.red5.server.Server - Add mapping global: default host: context: vod
[INFO] [Launcher:/] org.red5.server.Server - Add mapping global: default host: context:
[WARN] [Launcher:/] org.red5.server.scope.Scope - Invalid scope rejected: Scope [name=, path=/default, type=APPLICATION, autoStart=true, creationTime=1413342261664, depth=1, enabled=true, running=false]
[WARN] [Launcher:/] org.red5.server.scope.Scope - Scope not added to parent
[INFO] [Launcher:/installer] org.red5.server.Server - Add mapping global: default host: localhost:5080 context: installer
[INFO] [Launcher:/installer] org.red5.server.service.Installer - Installer service created

同一时候。我们看看mvn本地库中的文件

walfred@walfred-VirtualBox:/$ ls ~/.m2/repository/org/red5/red5-server/1.0.2-RC4/
_maven.repositories red5-server-1.0.2-RC4-javadoc.jar red5-server-1.0.2-RC4-server.zip
<span style="color:#ff0000;">red5-server-1.0.2-RC4-bootstrap.jar</span> red5-server-1.0.2-RC4.pom red5-server-1.0.2-RC4-sources.jar
<span style="color:#ff0000;">red5-server-1.0.2-RC4.jar</span> red5-server-1.0.2-RC4-server.tar.gz

3、下载拷贝依赖关系

walfred@walfred-VirtualBox:~/wmw/red5-google/red5-read-only$ mvn dependency:copy-dependencies

这时候target下会多出一个目录 dependency

[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building Red5 :: Server 1.0.2-RC4
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-dependency-plugin:2.6:copy-dependencies (default-cli) @ red5-server ---
[INFO] Copying httpclient-4.2.1.jar to /home/walfred/wmw/red5-google/red5-read-only/target/dependencytpclient-4.2.1.jar
[INFO] Copying commons-beanutils-1.8.3.jar to /home/walfred/wmw/red5-google/red5-read-only/target/dependency/commons-beanutils-1.8.3.jar
[INFO] Copying spring-beans-3.1.4.RELEASE.jar to /home/walfred/wmw/red5-google/red5-read-only/target/dependency/spring-beans-3.1.4.RELEASE.jar
[INFO] Copying bcprov-jdk15on-1.47.jar to /home/walfred/wmw/red5-google/red5-read-only/target/dependency/bcprov-jdk15on-1.47.jar
.....................................
------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 4.703s
[INFO] Finished at: Wed Oct 15 09:36:59 CST 2014
[INFO] Final Memory: 9M/22M
[INFO] ------------------------------------------------------------------------

4、打包公布,跳过test

mvn -Dmaven.test.skip=true -Dmaven.buildNumber.doUpdate=false package

此时又一次生成新的可执行的red5-server-1.0.2-RC4-server.tar.gz

...................................................................................................................[INFO] Building jar: /home/walfred/wmw/red5-google/red5-read-only/target/red5-server-1.0.2-RC4-javadoc.jar
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 36.994s
[INFO] Finished at: Wed Oct 15 10:01:19 CST 2014
[INFO] Final Memory: 14M/35M
[INFO] ------------------------------------------------------------------------

解压出来新的red5-server-1.0.2-RC4-server.tar.gz,与之前编译的进行一次比較,例如以下图,主要差别是生成了新的lib库文件:


5、执行red.sh

[WARN] [Launcher:/] org.red5.server.scope.Scope - Invalid scope rejected: Scope [name=, path=/default, type=APPLICATION, autoStart=true, creationTime=1413341225677, depth=1, enabled=true, running=false]
[WARN] [Launcher:/] org.red5.server.scope.Scope - Scope not added to parent
[INFO] [Launcher:/installer] org.red5.server.service.Installer - Installer service created

ok。finished

red5源代码编译并打包公布的更多相关文章

  1. (一)apache atlas源代码编译与打包

    特别注意: atlas已经提供了0.8版本可以安装了,只有在国外的服务器上安装编译才比较顺利,可以按照官方文档去安装. 国内很多网址有被墙的问题,目前还没有完全解决,可能安装不成功 安装文档地址:ht ...

  2. Storm-0.9.2-incubating源代码编译打包

    近期遇到一些同学询问Storm-0.9.2-incubating源代码编译打包的问题,现将编译步骤说明例如以下: 1.凝视掉project各pom文件里关于maven插件(maven-gpg-plug ...

  3. scala + intellij idea 环境搭建及编译、打包

    大数据生态圈中风头正旺的Spark项目完全是采用Scala语言开发的,不懂Scala的话,基本上就没法玩下去了.Scala与Java编译后的class均可以运行于JVM之上,就好象.NET中F#与C# ...

  4. Android应用程序资源的编译和打包过程分析

    文章转载至CSDN社区罗升阳的安卓之旅,原文地址:http://blog.csdn.net/luoshengyang/article/details/8744683 我们知道,在一个APK文件中,除了 ...

  5. android应用资源预编译,编译和打包全解析

    我们知道,在一个APK文件中,除了有代码文件之外,还有很多资源文件.这些资源文件是通过Android资源打包工具aapt(Android Asset Package Tool)打包到APK文件里面的. ...

  6. 在 Mac OS X 环境中从源代码编译安装 FFmpeg

    最近因为一个项目要求,需要开发实时视频编解码功能,准备采用 FFmpeg 以 x264 方式进行实时的视频编解码.Windows 以及 Linux 环境下的 FFmpeg 动态库.头文件等资源都非常容 ...

  7. Apache Kafka-0.8.1.1源代码编译

    作者:过往记忆 | 新浪微博:左手牵右手TEL | 能够转载, 但必须以超链接形式标明文章原始出处和作者信息及版权声明博客地址:http://www.iteblog.com/文章标题:<Apac ...

  8. 编译安装&打包压缩&定时任务

    内容概要 编译安装 打包压缩 定时任务 内容详细 一.编译安装 1.特点 使用源代码,编译打包软件. ​ 1.可以自定制软件 ​ 2.按需构建软件啊 2.步骤 下载安装包 wget 下载网址 如果没有 ...

  9. 阿里云服务器Linux CentOS安装配置(九)shell编译、打包、部署

    阿里云服务器Linux CentOS安装配置(九)shell编译.打包.部署 1.查询当前目录以及子目录下所有的java文件,并显示查询结果 find . -name *.java -type f - ...

随机推荐

  1. Spring Boot Jar包转War包 部署到Tomcat下

    原文:https://my.oschina.net/sdlvzg/blog/1562998 我们都知道springBoot中已经内置了tomcat,是不需要我们额外的配置tomcat服务器的,但是有时 ...

  2. [翻译] FlatUIKit

    FlatUIKit FlatUIKit is a collection of iOS components styled with the "Flat UI" aesthetic ...

  3. Android之在应用程序内部关注某人的微信

    Intent intent = new Intent(Intent.ACTION_VIEW); intent.setPackage("com.tencent.mm");//直接打开 ...

  4. word转pdf图片问题

    经过整理总结出两类问题:1,pdf文件下载文档中某些图片显示红叉.     问题现象:pdf是通过word转换成,发现源文件doc和docx文档均出现上述问题:只是某些图片显示红叉.通过这两点确定和文 ...

  5. Flask 学习(四)静态文件

    Flask 学习(四)静态文件 动态 web 应用也需要静态文件,一般是 CSS 和 JavaScript 文件.理想情况下你的服务器已经配置好提供静态文件的服务. 在开发过程中, Flask 也能做 ...

  6. Windows 7系统垃圾清理自写程序

    系统清理.bat @echo off color 0a title windows7系统垃圾清理--- echo ★☆ ★☆ ★☆ ★☆ ★☆★☆★☆ ★☆ ★☆ ★☆ ★☆★ echo ★☆ ★☆ ...

  7. scala编程第17章学习笔记(2)——集和映射

    默认情况下在使用“Set”或“Map”的时候,获得的都是不可变对象.如果需要的是可变版本,需要先写明引用. 如果同一个源文件中既要用到可变版本,也要用到不可变版本的集合或映射,方法之一是引用包含了可变 ...

  8. go语言基础之copy的使用

    1.copy的使用 示例: package main //必须有个main包 import "fmt" func main() { srcSlice := []int{1, 2} ...

  9. Faster\Slower 快慢指针的应用

    leetcode很多题目都是利用快慢指针来解决题目,下面具体讲解下快慢指针. 概念: 快指针在每一步走的步长要比慢指针一步走的步长要多.快指针通常的步速是慢指针的2倍.在循环中的指针移动通常为:fas ...

  10. IOS之UITabBarController

    在学习IOS开发过程中,针对于UITabBarController的使用也不少出现,UITabBarController和UINavigationController类似,UITabBarContro ...