标签: eclipse-rcp

如何添加到JFace对话框的超链接

如何在JFace对话框中创建超链接,单击此按钮可在默认Web浏览器中打开链接.一个完整的例子很有用.我知道有一个org.eclipse.jface.text.hyperlink包,但我找不到合适的例子.

java swt jface eclipse-rcp

12
推荐指数
1
解决办法
1万
查看次数

Eclipse RCP菜单和操作:配置还是编码?

这是一个普遍的问题,但我目前的问题围绕菜单处理.

在具有贡献菜单操作的普通插件中,您将在plugin.xml配置中配置ActionSet等.这显然是明智的.

我正在研究RCP应用程序(实际上是RAP),我想知道是否值得通过plugin.xml配置所有内容.我的插件不必与其他未知的插件交互,所以理论上,我有控制权.我可以通过编程方式添加菜单和操作.

我一直在尝试配置包含子菜单的菜单.我尝试过定义ActionSet并将其中一个链接到另一个但没有成功.根据用户角色,需要禁用某些项目.

我想我可以在几分钟内完成整个编码,但我不确定这是否符合日食的"精神".

有什么意见吗?应用程序将变得相当大,所以我想从一开始就采用这种方法.也许有人可以给我一个配置嵌套菜单的例子:-)

plugin.xml eclipse-rcp eclipse-rap

12
推荐指数
1
解决办法
2万
查看次数

任何人都有使用Gradle构建Eclipse RCP应用程序的经验?

有没有人有使用Gradle构建基于Eclipse RCP的应用程序的经验?我特别想知道:

  • 使用Gradle构建Eclipse RCP插件和产品有多合理?
  • 是否有任何Gradle插件来实现此任务(如Maven的Tycho插件)?
  • 你知道任何描述这种方法的教程或文章吗?

build eclipse-rcp gradle

12
推荐指数
1
解决办法
2249
查看次数

如何使用本地目录作为Tycho构建的目标平台?

我想用目标平台构建一个RCP-Application,这是一个Maven/Tycho目录.
现在我遇到了一些无法解决依赖关系的麻烦.

Internal error: java.lang.RuntimeException: "No solution found because the  
problem is unsatisfiable.": ["Unable to satisfy dependency from  
de.test.prototype.main 1.0.0.qualifier to bundle org.eclipse.ui 0.0.0.",  
"Unable to satisfy dependency from de.test.prototype.main 1.0.0.qualifier  
to bundle org.eclipse.core.runtime 0.0.0.", ...
Run Code Online (Sandbox Code Playgroud)

总而言之,有几个依赖性解决问题,所以我认为Tycho不能使用我的目标平台.
我阅读了http://wiki.eclipse.org/Tycho/Target_Platform,其中有以下注释:

不支持位置类型"目录","安装"和"功能"."

所以我的问题是:我如何让Tycho使用我的目标平台,虽然它是一个目录?

eclipse-rcp tycho maven

12
推荐指数
1
解决办法
8023
查看次数

为什么我需要在java源文件中转义unicode?

请注意,我不是在问为什么,而是为什么.我不知道这是否是RCP特定的问题,或者它是否是Java固有的东西.

我的java源文件以UTF-8编码.

如果我像这样定义我的文字字符串:

    new Language("fr", "Français"),
    new Language("zh", "??")
Run Code Online (Sandbox Code Playgroud)

当我在Eclipse中使用字符串作为Eclipse应用程序启动它时,它正如我所期望的那样工作:

在此输入图像描述

但是,当我启动由"Eclipse Product Export Wizard"构建的.exe时失败:

在此输入图像描述

我使用的解决方案是逃避这样的字符:

    new Language("fr", "Fran\u00e7ais"), // Français
    new Language("zh", "\u4e2d\u6587") // ??
Run Code Online (Sandbox Code Playgroud)

这样做没有问题(我的所有其他字符串都在属性文件中,只有语言名称是硬编码的)但我想了解.

我认为编译器在构建字节码时必须转换java文字字符串.那么为什么unicode逃逸是必要的呢?在java源文件中使用高范围unicode字符是错误的吗?编译中的那些字符究竟发生了什么,以及与转义字符的处理有何不同?该问题是否与RCP缓存有关?

java unicode eclipse-rcp unicode-escapes

12
推荐指数
1
解决办法
1603
查看次数

如何更改Eclipse窗口标题?

如何更改正在运行的Eclipse的标题(最后一部分)?

我说的是Eclipse发布本身,而不是我为Eclipse编写的程序.

目前我有以下标题:

在此输入图像描述

1这部分是设置的Window -> Preferences -> General -> Workspace -> Workspace name.

其他部件是自动生成的.

我想改变2现在的部分Eclipse.我安装了几个日食,想在这里推荐它们.

UPDATE

我在plugin.xml里面找到了文件./plugins/org.eclipse.epp.package.standard_XXXXX,发现它包含一个设置

     <property
           name="appName"
           value="Eclipse">
     </property>
Run Code Online (Sandbox Code Playgroud)

我根据自己的喜好改变了这个,但它并没有影响标题.

更新2

我也找到了 plugin.properties

productName=Eclipse
Run Code Online (Sandbox Code Playgroud)

不幸的是,改变这一点也没有影响标题.

eclipse configuration window titlebar eclipse-rcp

12
推荐指数
1
解决办法
4084
查看次数

Maven Tycho:不是有效的OSGi版本

在我的项目中,我正在尝试使用Maven/Tycho导出Eclipse RCP应用程序.

在"SNAPSHOT"发布配置中,所有插件(以及它自己的产品)使用以下版本模式:

OSGI: x.y.z.qualifier
MVN:  x.y.z-SNAPSHOT
Run Code Online (Sandbox Code Playgroud)

交货将使用以下模式

OSGI: x.y.z.vyyyyMMddHHmm
MVN:  x.y.z-vyyyyMMddHHmm
Run Code Online (Sandbox Code Playgroud)

你可以注意到," - "和"."之间只有区别.

对于RCP插件,我必须通过使用以下maven插件禁用tycho执行的检查来验证版本

<build>
    <plugins>
        <plugin>
            <groupId>org.eclipse.tycho</groupId>
            <artifactId>tycho-packaging-plugin</artifactId>
            <version>0.22.0</version>
            <configuration>
                <strictVersions>false</strictVersions>
            </configuration>
        </plugin>
    </plugins>
</build>
Run Code Online (Sandbox Code Playgroud)

到目前为止,一切都很好.

当它来自RCP应用程序的产品时,我有以下pom.xml文件

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <parent>
        <groupId>XXXXXX.user-interfaces</groupId>
        <artifactId>user-interfaces-parent-pom</artifactId>
        <version>0.2.0-v201505041341</version>
        <relativePath>../../poms/parent-pom</relativePath>
    </parent>


    <artifactId>XXXXXX.product</artifactId>
    <name>XXXXXX.product</name>
    <packaging>eclipse-repository</packaging>

    <!-- Make OSGi happy -->
    <!-- version>0.2.0.v201505041341</version-->

    <build>
        <plugins>
            <plugin>
                <groupId>org.eclipse.tycho</groupId>
                <artifactId>tycho-p2-director-plugin</artifactId>
                <version>${tycho.version}</version>
                <executions>
                    <execution>
                        <id>create-product-distributions</id>
                        <goals>
                            <goal>materialize-products</goal>
                            <goal>archive-products</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>
</project>
Run Code Online (Sandbox Code Playgroud)

父pom.xml只定义了一些更多的东西,比如P2存储库和tycho-maven-plugin构建步骤.

<build>
    <plugins>
        <plugin>
            <groupId>org.eclipse.tycho</groupId>
            <artifactId>tycho-maven-plugin</artifactId>
            <extensions>true</extensions>
        </plugin>
    </plugins> …
Run Code Online (Sandbox Code Playgroud)

java packaging eclipse-rcp tycho maven

12
推荐指数
1
解决办法
2326
查看次数

在Eclipse RCP Tycho应用程序中使用第三方库

我根据vogella广泛的Tycho教程创建了一个锅炉板项目.

在此输入图像描述

事实:

  • 没有功能,也没有插件.唯一的插件是RCP应用程序,它也是入口点.

问题:

  • 我不知道在哪些内容中pom.xml包含第三方依赖项.

  • 不能将它们包含在RCP项目中,因为那个pom的包装是eclipse-plugin,而不是jar.根据我的注意,如果我将包装更改为jar,则会自动添加"Maven Dependencies"库.如果我改回去eclipse-plugin,他们会被删除.

问题:

  • 我在哪里添加依赖项?jar我的项目中没有包装包装.
  • 我应该用必要的JAR创建一个单独的项目吗?如何将该依赖项包含在整个项目中?
  • 为这个RCP应用程序创建单独的插件和功能真的是一个很好的做法吗?

相关解决方案

  • "更新项目"不起作用,其他SO问题中的其他解决方案也不起作用.
  • 还有这个问题那个问题,但我没有完全得到答案

java eclipse-plugin eclipse-rcp tycho maven

12
推荐指数
1
解决办法
1674
查看次数

使用JFace数据绑定绑定单选按钮组的正确方法

我想知道是否有人可以向我解释如何使用JFace数据绑定将一组单选按钮正确绑定到模型中的布尔变量.

让我先解释一下情况:我创建了一个代表一组SWT按钮的类(样式设置为'SWT.RADIO'),它由三个元素组成:带有问题的标签和两个按钮,一个用于"是"回答,一个回答"否".我想在模型中创建一个布尔变量的绑定,这样当用户选择"是"单选按钮时,布尔值设置为true,当他/她选择"否"按钮时,布尔值为设为false.

这是我班级的代码:

private class YesOrNoRadioButtonGroup {

private static final String YES = "yes";
private static final String NO = "no";
private Button m_yesButton;
private Button m_noButton;

public YesOrNoRadioButtonGroup(final Composite p_parent,
                               final String p_questionText,
                               final IObservableValue p_modelProperty
                               final DataBindingContext p_dbContext) 
{

  Composite radioButtonGroupContainer = new Composite(p_parent, SWT.NONE);
  radioButtonGroupContainer.setLayout(new GridLayout());
  Label question = new Label(radioButtonGroupContainer, SWT.NONE);
  question.setText(p_questionText);


  m_yesButton = new Button(radioButtonGroupContainer, SWT.RADIO);
  m_yesButton.setText(YES);

  m_noButton = new Button(radioButtonGroupContainer, SWT.RADIO);
  m_noButton.setText(NO);
  m_noButton.setSelection(true);

  Listener yesOrNoRadioGroupListener = new Listener() {

    public void handleEvent(Event p_event) { …
Run Code Online (Sandbox Code Playgroud)

data-binding swt jface eclipse-rcp

11
推荐指数
2
解决办法
1万
查看次数

热键/快捷方式:"这是哪个插件?"

请原谅这么简单的问题,我已离开RCP大约一年了:

我可以在Eclipse中使用什么快捷方式/热键组合来发现贡献/拥有当前视图的插件?

我记得它提出了当前鼠标下插件的plugin.xml.

我应该非常感谢你的线索......

M.

eclipse jface eclipse-rcp

11
推荐指数
1
解决办法
3911
查看次数