http://www.bubuko.com/infodetail-691380.html
tycho,是eclipse的一个孵化项目,是对maven的扩展,用于对eclipse 插件项目进行管理和构建。
关于tycho的解释和作用可以参考链接: http://blog.csdn.net/qinjienj/article/details/7908919。而且,相信能够用到tycho的GGMM们,应该还是能看得懂http://www.vogella.com/tutorials/EclipseTycho/article.html 中关于tycho的基本使用的。而且,在联网环境下,通过实例,相信学会使用tycho虽然可能有难度,但是应该可以学会,所以本文不赘述。
本文要讲到的问题是,在离线环境下,如何使用tycho。基本上,离线使用,首先肯定还是准备必要的环境了。
首先,需要在联网环境下配置一个maven仓库,并成功运行一个tycho管理的eclipse项目。对于在离线环境下需要使用到的打包方式,依赖等内容,在联网环境下先配置一次并运行成功。保证仓库中有tycho运行时需要用到的所有内容。
将联网环境下的仓库导入到离线环境。仓库中可用的内容主要是tycho相关的内容,其他内容其实可以不用导入,因为其他内容也可能非常大。(仓库中org和de开头两个文件夹)
还需要导入的内容是eclipse运行平台环境的p2仓库包。可以在链接http://download.eclipse.org/eclipse/downloads/drops4/R-4.4.2-201502041700/ 中下载当前最新的平台仓库。如下图红框所示:
技术分享
在离线环境下,需要生成eclipse RCP项目的p2仓库。可以使用手工的方式先导出一次RCP程序,在导出时选择生成p2仓库。
在tycho的父pom.xml中配置仓库位置。在联网环境下tycho的仓库地址配置一般如下:
<repositories>
<repository>
<id>luna</id>
<layout>p2</layout>
<url>http://download.eclipse.org/releases/luna</url>
</repository>
</repositories>
在离线环境下,仓库的配置需要修改为:
<repositories>
<repository>
<id>luna</id>
<layout>p2</layout>
<url>file:///D:/p2Rep/XXX</url>
</repository>
<repository>
<id>platform</id>
<layout>p2</layout>
<url>file:///D:/p2Rep/</url>
</repository>
</repositories>
以上配置中,D:/p2Rep/XXX和D:/p2Rep/YYY用实际的RCP程序p2仓库和导入的平台仓库位置替代即可。需要注意,url的写法中,如果仓库是本地,file:///后面是三个“/”。如果访问的内部远程机器上的共享仓库,file://后面是两个"/"。
还需要注意的一个问题是,eclipse官网提供的语言包不是以仓库的形式提供,没有p2仓库的配置文件(artifact.xml和content.xml中没有语言包的配置信息)。所以,在导出RCP时如果要生成P2仓库,包含语言包则导出就会出错。
分享到:
相关推荐
一个用于Eclipse RCP应用程序(例如Virtual Satellite)的Maven Tycho演示项目。 项目状态 状态 用于开发构建。 状态 用于集成构建。 状态 为大师建造。 目的 该项目是使虚拟卫星开源的测试设置。 它有助于将软件...
通过插件,如Eclipse PDE Build或Tycho,这些构建工具能够处理RCP项目的特殊需求。 4. **资源和配置文件**: RCP应用可能需要额外的配置文件、图标和其他资源。打包时,确保这些资源被正确地包含在exe文件或相关的...
标题中的"tycho_build_RCP_app.rar.zip"表明这是一个使用Tycho构建的Eclipse RCP(Rich Client Platform)应用程序的源码压缩包,且文件格式是rar和zip的结合。RCP是Eclipse框架用于创建桌面应用的方式,而Tycho则是...
tycho-eclipse-plugin-原型这个原型将创建一个具有嵌套结构的多模块项目: __artifactId__ : parent pom project | |---__artifactId__.core : eclipse-plugin | |---__artifactId__.feature: eclipse-feature | |--...
这个名为"eclipse_rcp_example"的项目是为展示Eclipse RCP的强大功能而设计的一个实例,其中包括了功能模块、片段(plug-ins)、测试以及Tycho构建工具的使用。在Java开发领域,Eclipse RCP是一个重要的工具,它允许...
Eclipse Tycho是一个基于Maven的构建系统,专门设计用于构建使用Eclipse插件和RCP(Rich Client Platform)应用程序的项目。这个测试项目是为了演示和帮助开发者理解如何有效地利用Tycho来构建、管理和测试Eclipse...
Tycho是一个基于Maven的构建系统,专门用于构建Eclipse插件和RCP(Rich Client Platform)应用程序。Tycho的核心功能在于解决Eclipse插件项目和其他依赖项之间的复杂依赖关系,使得在非Java标准模块系统环境中可以...
9. **发布和打包**:最后,书籍会讲解如何打包和部署Eclipse RCP应用程序,包括使用Update Manager创建更新站点,以及利用Tycho进行Maven化的构建过程。 通过阅读《Addison Wesley - Eclipse Rich Client Platform ...
在使用Eclipse IDE for RCP and RAP 开发时,开发者可以利用其强大的特性,如: 1. **代码编辑器**:支持语法高亮、自动完成、错误检测等功能,提供高效的编码体验。 2. **调试工具**:能够对Java代码进行调试,...
3. **零依赖运行时**:Tycho可以构建出没有外部依赖的可执行RCP应用,这得益于其对p2(Eclipse的软件更新机制)的支持。 ** Tycho的构建过程 ** - **p2索引**:`p2.index`文件是Eclipse p2仓库的一部分,它包含了...
Eclipse RCP允许开发者使用已有的Eclipse插件系统来创建自定义的、独立的桌面应用程序。这个平台提供了诸如窗口管理、用户界面组件、国际化和本地化、事件处理、持久性存储等核心功能,使得开发者可以专注于业务...
通过这个实例,开发者可以学习到如何在Eclipse RCP中组织项目结构,集成各种功能,如音频播放、多语言支持、帮助系统以及使用Maven进行构建。此外,还可以了解到如何利用第三方库如JLayer处理MP3文件,以及如何通过...
这是一个易于使用的Maven3插件,负责Eclipse RCP环境中的第三方依赖关系管理的自动化。 你为什么要打扰? 您是否熟悉Maven,Gradle或其他任何精美工具中的自动依赖项管理? 您只需定义一个项目描述符,添加一堆...
5. **运行和调试**:利用Eclipse的调试器,可以方便地对Bundle进行单步调试,查看运行时状态。 **示例应用**:压缩包中的"osgi_example"可能包含了一个简单的OSGi Bundle示例,例如,创建一个HelloWorld服务,其他...
在 Eclipse 插件项目中,Tycho 能够处理这些依赖,并将它们打包到最终的插件或 RCP 应用中。 4. **Eclipse 插件结构**: Eclipse 插件通常包含一个或多个 `META-INF/MANIFEST.MF` 文件,这是 OSGi 容器识别和管理...
开发者需要学习Plug-in Development Environment (PDE),这是一个Eclipse内建的工具集,用于构建、调试和打包Eclipse插件及RCP(Rich Client Platform)应用程序。 此外,可能还会涉及到Eclipse的扩展点(Extension...
Eclipse是一款广泛使用的开源集成开发环境(IDE),其强大的可扩展性主要体现在插件系统上。Eclipse插件开发是构建自定义工具、扩展编辑器、视图、透视图等核心功能的重要方式。本教程旨在逐步指导初学者进行Eclipse...
sonarlint-eclipse, Eclipse的SonarLint SonarLint Eclipse 插件建筑 mvn clean verify Eclipse 中的开发安装 m2eclipse,然后Tycho扩展到 m2eclipse:窗口-> 首选项->
8. **Tycho构建工具**:对于复杂的插件系统,Tycho是一个强大的Maven插件,可以帮助构建和部署Eclipse插件和RCP应用。 9. **P2更新机制**:Eclipse的P2(Provisioning Platform 2)是用于管理插件和软件更新的机制...
通过以上步骤,我们可以确保在使用Maven Tycho构建Eclipse产品时,能够正确地捆绑JRE,无论是32位还是64位版本,都能适应不同的操作系统环境。这种方法使得构建过程更加自动化,同时也方便了产品的分发和部署。