0

我们最近决定开始Severity在我们的 Trac 项目中使用该字段。但是,我想不出一种方法让该字段出现在 Eclipse 的 Mylyn 插件的查询编辑器中 - 无论我尝试什么,该字段都不存在。

它确实显示在 Web 界面中,如果我在 Mylyn 中打开任务,我可以在那里设置严重性(因此有时 Mylyn确实知道正在使用该属性),但它不会出现在查询对话框中。

我有

  • 确保所有任务都设置了严重性。
  • 重启 Eclipse
  • 与存储库同步
  • 多次点击“从存储库更新属性”
  • 重新安装 Mylyn

没有成功。还有什么可以尝试的?

澄清:这不是关于编辑票证。这是关于从存储库中查询票证,使用右键单击任务列表 - >“新查询...”。

这是我看到的表格的样子:

在此处输入图像描述

我也想在某个地方有一个严重程度的字段。

4

3 回答 3

1

您必须获取 TracQueryPage.java 的源并添加“严重性”列表。

  1. http://grepcode.com/file/repository.grepcode.com/java/eclipse.org/3.6.2/org.eclipse.mylyn.trac/ui/3.4.2/org/eclipse/mylyn/internal/trac/ ui/wizard/TracQueryPage.java?av=f

  2. 在 Eclipse 中创建一个空插件项目(例如,命名为 trac-connector-patch)

  3. 在插件文件夹中找到 org.eclipse.mylyn.trac.ui_3.6.0.v20110608-1400.jar 并将 MANIFEST.MF 复制到插件项目的 META-INF 文件夹中。删除所有以 "Name:" 和 "SHA1-Digest:" 开头的行,然后将 Bundle-Symbolic-Name 更改为

    捆绑符号名称:org.eclipse.mylyn.trac.ui-patched;singleton:=true

  4. 将 TracQueryPage.java 的源代码复制到源文件夹中

    src\org\eclipse\mylyn\internal\trac\ui\wizard\TracQueryPage.java

  5. 修复项目构建路径:

    • 从 MANIFEST.MF 中删除 org.eclipse.mylyn.internal.trac.ui 和 org.eclipse.mylyn.internal.trac.ui.editor 的导出
    • 使用上下文菜单“PDE 工具 -> 更新类路径”
    • 如果 org.eclipse.swt 的内容仍然存在错误,请将 eclipse 插件文件夹中的 swt jar 作为外部 jar 添加到项目构建 bpath(例如 org.eclipse.swt.win32.win32.x86_64_3.7.1.v3738a.jar)
  6. 修改 TracQueryPage

    // add a new list search field
    private ListSearchField severityField;
    ...
    
    protected Control createTicketAttributes(Composite control) {
        Composite group = new Composite(control, SWT.NONE);
        GridLayout layout = new GridLayout();
    
        layout.numColumns = 5; // add a column
    
        group.setLayout(layout);
        GridData gd = new GridData(SWT.FILL, SWT.FILL, true, true);
        gd.horizontalSpan = 1;
        group.setLayoutData(gd);
    
        Label label = new Label(group, SWT.LEFT);
        label.setText(Messages.TracQueryPage_Status);
    
        label = new Label(group, SWT.LEFT);
        label.setText(Messages.TracQueryPage_Resolution);
    
        label = new Label(group, SWT.LEFT);
        label.setText(Messages.TracQueryPage_Type);
    
        label = new Label(group, SWT.LEFT);
        label.setText(Messages.TracQueryPage_Priority);
    
        label = new Label(group, SWT.LEFT);
        label.setText("Severity"); // TODO use a property
    
        statusField = new ListSearchField("status"); //$NON-NLS-1$
        statusField.createControls(group, STATUS_HEIGHT);
    
        resolutionField = new ListSearchField("resolution"); //$NON-NLS-1$
        resolutionField.createControls(group, STATUS_HEIGHT);
    
        typeField = new ListSearchField("type"); //$NON-NLS-1$
        typeField.createControls(group, STATUS_HEIGHT);
    
        priorityField = new ListSearchField("priority"); //$NON-NLS-1$
        priorityField.createControls(group, STATUS_HEIGHT);
    
        // add the severityField
        severityField = new ListSearchField("severity"); //$NON-NLS-1$
        severityField.createControls(group, STATUS_HEIGHT);
    
        return group;
    }
    
    private void updateAttributesFromRepository(final boolean force) {
        ...
    
        statusField.setValues(client.getTicketStatus());
        resolutionField.setValues(client.getTicketResolutions());
        typeField.setValues(client.getTicketTypes());
        priorityField.setValues(client.getPriorities());
    
        // also update the severities
        severityField.setValues(client.getSeverities());
    
        componentField.setValues(client.getComponents());
        versionField.setValues(client.getVersions());
        milestoneField.setValues(client.getMilestones());    
    }
    
  7. 现在您已准备好路径插件 jar(例如 org.eclipse.mylyn.trac.ui_3.6.0.v20110608-1400.jar):

    • 用修改后的类覆盖 TracQueryPage.class
    • 从 MANIFEST.MF 中删除 TracQueryPage.class 的“名称:”和“SHA1-Digest:”行
  8. 用你的补丁插件替换插件。并重启eclipse。

  9. 或者下载一个已经打过补丁的插件: http: //franke.ms/download/org.eclipse.mylyn.trac.ui_3.6.0.v20110608-1400-patched.zip

于 2012-05-23T08:05:07.747 回答
0

查看代码,似乎无法根据严重性进行查询。您可能想在https://bugs.eclipse.org/bugs打开一个功能请求。如果您提供补丁,那就更好了。:)

于 2012-01-23T20:56:53.923 回答
-1

它在表单编辑器中没有带标签的字段,但名称旁边有一个图标。单击该图标,您可以定义严重性。

在此处输入图像描述

于 2012-01-12T09:16:58.483 回答