小编aka*_*spi的帖子

如何使用特定的光标偏移位置打开一个新的eclipse编辑器

我想以编程方式执行上述操作.

我看了如何在eclipse中获取光标位置TextEditorEclipse-plugin如何获取当前文本编辑器的corsor位置,所以我知道如何从当前的打开编辑器中获取光标偏移量.但是,我正在尝试在我以编程方式打开的新编辑器中设置光标偏移量.

我目前打开新编辑器的方式如下:

IWorkbenchWindow win = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
    IWorkbenchPage page = win.getActivePage();
    if (page != null) {
        IEditorPart editor = page.getActiveEditor();
        if (editor != null) {
            IEditorInput input = editor.getEditorInput();
            if (input instanceof IFileEditorInput) {
                String fileLocation = ((IFileEditorInput) input).getFile().getLocation().toOSString();
                String newFileLocartion = generateNewFileLocation(fileLocation);
                File file = new File(newFileLocartion);
                IFileStore fileStore = EFS.getLocalFileSystem().getStore(file.toURI());
                try {
                    IDE.openEditorOnFileStore(page, fileStore);
                } catch (PartInitException e) {
                    // TODO error handling
                }
            }
        }
    }
Run Code Online (Sandbox Code Playgroud)

有没有办法打开设置新编辑器以特定偏移量打开(假设我已经提前知道了偏移量)?

谢谢!

java eclipse-plugin editor

7
推荐指数
1
解决办法
1791
查看次数

static()方法(没有任何decleration)

我有以下课程:

public abstract class A()
{
   public static final SomeString = null;

   static()
   {
       SomeString = "aaa";
   }
}
Run Code Online (Sandbox Code Playgroud)

何时调用此静态方法以及如何调用?

创建这样的静态方法(没有名称/返回类型)的目的是什么?

java static initializer static-initialization

3
推荐指数
1
解决办法
170
查看次数

将不同的属性类型解组到同一个 java 对象时出现 NullPointerException


我在尝试解组 XML 时遇到了一个严重的问题。起初,成员元素的“值”属性中仅包含 Integer(如第一个 'EnumType' 元素),但是,现在另一个 'EnumType' 以字符串作为值出现 - 我得到了下面的 NullPointerException。

请注意,Member.java 中的“value”成员最初来自“int”类型(当仅接受 Integer 作为 Member 元素的值时)并且它工作正常。只有当我将它更改为 Object (我想这是我的问题的根源)时 - 出现以下异常。

XML:

<EnumType Name="Genre" UnderlyingType="Edm.Int32">
   <Member Name="ACTION" Value="0"/>
   <Member Name="COMEDY" Value="1"/>
</EnumType>
<EnumType Name="Rating" UnderlyingType="Edm.String">
   <Member Name="RatingA" Value="G"/>
   <Member Name="RatingB" Value="PG"/>
 </EnumType>
Run Code Online (Sandbox Code Playgroud)

枚举类型

@XmlRootElement
public class EnumType {

   @XmlElement(name = "Member", namespace = "http://schemas.microsoft.com/ado/2009/11/edm")
   private List<Member> members = new LinkedList<Member>();

   public List<Member> getMembers() {
      return members;
   }
}
Run Code Online (Sandbox Code Playgroud)

会员.Java

@XmlRootElement
public class Member {

    @XmlAttribute(name = "Name")
    private String name; …
Run Code Online (Sandbox Code Playgroud)

java jaxb unmarshalling

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