Java class 中的排序字段在 NetBeans 中不起作用
Sorting fields in Java class not working in NetBeans
我正在尝试使用 NetBeans,并且非常喜欢某些事情的完成方式。我来自 Eclipse。对源代码项目进行排序的功能等功能不起作用。
使用:
Product Version: Apache NetBeans IDE 12.1
Java: 1.8.0_131; Java HotSpot(TM) 64-Bit Server VM 25.131-b11
Runtime: Java(TM) SE Runtime Environment 1.8.0_131-b11
System: Linux version 4.8.6-300.fc25.x86_64 running on amd64; UTF-8; en_US (nb)
User directory: /home/bpracht/.netbeans/12.1
Cache directory: /home/bpracht/.cache/netbeans/12.1
在示例 class 中,我想以常规方式对其进行排序(即私有字段排在顶部,public 方法排在底部。单击格式“Alt”后-Shift-F" 在下面的 class 上,它不会进一步改变顺序:
class Token<T> {
public Token offsetStart(final Long value) {
this.offsetStart = value;
return this;
}
public Token length(final Long value) {
this.length = value;
return this;
}
public Token fullyResolved(final Boolean value) {
this.fullyResolved = value;
return this;
}
public Token parentToken(final Token value) {
this.parentToken = value;
return this;
}
public Token firstChildToken(final Token value) {
this.firstChildToken = value;
return this;
}
public Token lastChildToken(final Token value) {
this.lastChildToken = value;
return this;
}
public Token previousToken(final Token value) {
this.previousToken = value;
return this;
}
public Token nextToken(final Token value) {
this.nextToken = value;
return this;
}
public Token lambdaSetValue(final LambdaSetValue<T> value) {
this.lambdaSetValue = value;
return this;
}
private Long offsetStart;
private Long length;
private Boolean fullyResolved;
private Token parentToken;
private Token firstChildToken;
private Token lastChildToken;
private Token previousToken;
private Token nextToken;
private LambdaSetValue<T> lambdaSetValue;
public Long getLength() {
return length;
}
public long getOffsetStart() {
return offsetStart;
}
public void setOffsetStart(long offsetStart) {
this.offsetStart = offsetStart;
}
public void setLength(Long length) {
this.length = length;
}
}
interface LambdaSetValue<T> {
void setValue(T value);
}
在 Tools-Options-Editor->Formatting 中我有这个:
成员排序顺序:
领域
静态字段
静态初始化器
静态方法
静态 类
类
实例初始化器
构造函数
方法
(选中)按可见性对成员进行排序具有:
私人的
受保护
默认
Public
(勾选)让 getter 和 setter 在一起
(选中)按字母顺序对组中的备忘录进行排序
(未选中)排序使用依赖项
插入点(按类别排序
我希望它至少放
private Long offsetStart after private Long length;
提前致谢
樵夫
您可以使用“来源”菜单然后选择“组织成员”来对成员进行排序:
使用我的设置组织成员的结果:
class Token<T> {
private Long offsetStart;
private Long length;
private Boolean fullyResolved;
private Token parentToken;
private Token firstChildToken;
private Token lastChildToken;
private Token previousToken;
private Token nextToken;
private LambdaSetValue<T> lambdaSetValue;
public Token offsetStart(final Long value) {
this.offsetStart = value;
return this;
}
public Token length(final Long value) {
this.length = value;
return this;
}
public Token fullyResolved(final Boolean value) {
this.fullyResolved = value;
return this;
}
public Token parentToken(final Token value) {
this.parentToken = value;
return this;
}
public Token firstChildToken(final Token value) {
this.firstChildToken = value;
return this;
}
public Token lastChildToken(final Token value) {
this.lastChildToken = value;
return this;
}
public Token previousToken(final Token value) {
this.previousToken = value;
return this;
}
public Token nextToken(final Token value) {
this.nextToken = value;
return this;
}
public Token lambdaSetValue(final LambdaSetValue<T> value) {
this.lambdaSetValue = value;
return this;
}
public Long getLength() {
return length;
}
public long getOffsetStart() {
return offsetStart;
}
public void setOffsetStart(long offsetStart) {
this.offsetStart = offsetStart;
}
public void setLength(Long length) {
this.length = length;
}
}
interface LambdaSetValue<T> {
void setValue(T value);
}
如我的评论所述,private Long offsetStart
和 private Long length
具有相同的访问级别和相同的类型,没有功能代码差异,并且 Netbeans 不应用字母顺序(英文)。
我正在尝试使用 NetBeans,并且非常喜欢某些事情的完成方式。我来自 Eclipse。对源代码项目进行排序的功能等功能不起作用。 使用:
Product Version: Apache NetBeans IDE 12.1
Java: 1.8.0_131; Java HotSpot(TM) 64-Bit Server VM 25.131-b11
Runtime: Java(TM) SE Runtime Environment 1.8.0_131-b11
System: Linux version 4.8.6-300.fc25.x86_64 running on amd64; UTF-8; en_US (nb)
User directory: /home/bpracht/.netbeans/12.1
Cache directory: /home/bpracht/.cache/netbeans/12.1
在示例 class 中,我想以常规方式对其进行排序(即私有字段排在顶部,public 方法排在底部。单击格式“Alt”后-Shift-F" 在下面的 class 上,它不会进一步改变顺序:
class Token<T> {
public Token offsetStart(final Long value) {
this.offsetStart = value;
return this;
}
public Token length(final Long value) {
this.length = value;
return this;
}
public Token fullyResolved(final Boolean value) {
this.fullyResolved = value;
return this;
}
public Token parentToken(final Token value) {
this.parentToken = value;
return this;
}
public Token firstChildToken(final Token value) {
this.firstChildToken = value;
return this;
}
public Token lastChildToken(final Token value) {
this.lastChildToken = value;
return this;
}
public Token previousToken(final Token value) {
this.previousToken = value;
return this;
}
public Token nextToken(final Token value) {
this.nextToken = value;
return this;
}
public Token lambdaSetValue(final LambdaSetValue<T> value) {
this.lambdaSetValue = value;
return this;
}
private Long offsetStart;
private Long length;
private Boolean fullyResolved;
private Token parentToken;
private Token firstChildToken;
private Token lastChildToken;
private Token previousToken;
private Token nextToken;
private LambdaSetValue<T> lambdaSetValue;
public Long getLength() {
return length;
}
public long getOffsetStart() {
return offsetStart;
}
public void setOffsetStart(long offsetStart) {
this.offsetStart = offsetStart;
}
public void setLength(Long length) {
this.length = length;
}
}
interface LambdaSetValue<T> {
void setValue(T value);
}
在 Tools-Options-Editor->Formatting 中我有这个: 成员排序顺序: 领域 静态字段 静态初始化器 静态方法 静态 类 类 实例初始化器 构造函数 方法
(选中)按可见性对成员进行排序具有: 私人的 受保护 默认 Public
(勾选)让 getter 和 setter 在一起 (选中)按字母顺序对组中的备忘录进行排序 (未选中)排序使用依赖项 插入点(按类别排序
我希望它至少放
private Long offsetStart after private Long length;
提前致谢 樵夫
您可以使用“来源”菜单然后选择“组织成员”来对成员进行排序:
使用我的设置组织成员的结果:
class Token<T> {
private Long offsetStart;
private Long length;
private Boolean fullyResolved;
private Token parentToken;
private Token firstChildToken;
private Token lastChildToken;
private Token previousToken;
private Token nextToken;
private LambdaSetValue<T> lambdaSetValue;
public Token offsetStart(final Long value) {
this.offsetStart = value;
return this;
}
public Token length(final Long value) {
this.length = value;
return this;
}
public Token fullyResolved(final Boolean value) {
this.fullyResolved = value;
return this;
}
public Token parentToken(final Token value) {
this.parentToken = value;
return this;
}
public Token firstChildToken(final Token value) {
this.firstChildToken = value;
return this;
}
public Token lastChildToken(final Token value) {
this.lastChildToken = value;
return this;
}
public Token previousToken(final Token value) {
this.previousToken = value;
return this;
}
public Token nextToken(final Token value) {
this.nextToken = value;
return this;
}
public Token lambdaSetValue(final LambdaSetValue<T> value) {
this.lambdaSetValue = value;
return this;
}
public Long getLength() {
return length;
}
public long getOffsetStart() {
return offsetStart;
}
public void setOffsetStart(long offsetStart) {
this.offsetStart = offsetStart;
}
public void setLength(Long length) {
this.length = length;
}
}
interface LambdaSetValue<T> {
void setValue(T value);
}
如我的评论所述,private Long offsetStart
和 private Long length
具有相同的访问级别和相同的类型,没有功能代码差异,并且 Netbeans 不应用字母顺序(英文)。