小编rad*_*lan的帖子

如何在netbeans中恢复关闭的输出窗口?

我经常想要通过使用上下文菜单来清除当前的输出窗口,但是Clear我意外地点击了Close条目(直接在下面Clear),而不是点击条目.

我怎样才能得到那个输出窗口!?

通过窗口/输出/输出我只获得所有输出窗口的容器选项卡.如何重新打开当前运行的应用程序的输出窗口?

netbeans window recover output

37
推荐指数
8
解决办法
11万
查看次数

如何将参数从:命令传递给函数?

我想写一个命令,这个命令会有这样的格式:

[range]MyCMD[!] [count] [oneArg] [flags]
Run Code Online (Sandbox Code Playgroud)

要么

[range]MyCMD[!] [oneArg] [count] [flags]
Run Code Online (Sandbox Code Playgroud)

类似于

:[range]P[rint] [count] [flags]
Run Code Online (Sandbox Code Playgroud)

要么

:[range]d[elete] [x] {count}
Run Code Online (Sandbox Code Playgroud)

该命令MyCMD最终会调用一个函数来完成一些工作.我写了这一行(不会起作用)

command! -nargs=+ -range -bang -count=0  MyCMD <line1>,<line2>call MyFUNC(<q-args>, "<bang>","<count>", .... ..)
Run Code Online (Sandbox Code Playgroud)

这里的问题是,如何处理这些参数:

  • 问题1我读到的帮助,-range并且-count不能在不同时使用,但我需要他们.我还看了一些vim命令,比如:delete,:print,当我们使用这些命令时,我们可以给两个rangecount.另外,我发现vim doc有两个相同命令的条目,如果a {count}或者[count]是可用的.喜欢:

    :[range]d[elete] [x]    
    :[range]d[elete] [x] {count}
    
    Run Code Online (Sandbox Code Playgroud)

要么

:[range]p[rint] [flags]
:[range]p[rint] {count} [flags]
Run Code Online (Sandbox Code Playgroud)

这是为什么?为什么不随着[count]?(这将是另一个小问题)

  • 问题2来自我的设计,所有这些参数都是可选的,它们都有默认值(参见下表).如何将这些参数传递给函数(我检查过<q-args> and <f-args>)以及如何区分哪些用户输入是哪个参数?例如用户给出

    :MyCMD 5 g

    argName | Default value | …
    Run Code Online (Sandbox Code Playgroud)

vim

10
推荐指数
1
解决办法
3817
查看次数

不支持发行版1.8

我有一个使用Java 8的项目.

到目前为止,在pom中我们将源版本和目标版本指定为1.8:

<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
Run Code Online (Sandbox Code Playgroud)

我们想利用Java 9+的"-release"选项并添加以下内容:

<maven.compiler.release>1.8</maven.compiler.release>
Run Code Online (Sandbox Code Playgroud)

但现在我们收到以下错误:

Fatal error compiling: release version 1.8 not supported
Run Code Online (Sandbox Code Playgroud)

我们使用maven 3.5.3,版本3.8.0和Java 10中的maven-compiler-plugin来编译项目.

这有什么不对?

java maven java-8 maven-compiler-plugin

9
推荐指数
1
解决办法
979
查看次数

在运行时设置java.util.logging.config.file

我试图在运行时设置java util日志配置文件,以避免必须将其设置为VM参数.但这只是行不通.每当我尝试重新读取配置时,都会禁用日志记录.

请参阅以下代码段:

package test;

import java.io.FileInputStream;
import java.util.logging.Level;
import java.util.logging.LogManager;
import java.util.logging.Logger;

public class A {
  private static final Logger LOGGER= Logger.getLogger(A.class.getName());

  public static void main(String[] args) throws Exception {
    System.out.println("--- start");
    LOGGER.log(Level.SEVERE, "SEVERE 1");
    LOGGER.log(Level.FINEST, "FINEST 1");
    LogManager.getLogManager().readConfiguration();
    LOGGER.log(Level.SEVERE, "SEVERE 2");
    LOGGER.log(Level.FINEST, "FINEST 2");
    LogManager.getLogManager().readConfiguration(new FileInputStream("/tmp/logging.properties"));
    LOGGER.log(Level.SEVERE, "SEVERE 3");
    LOGGER.log(Level.FINEST, "FINEST 3");
    System.out.println("--- end");
  }
}
Run Code Online (Sandbox Code Playgroud)

如果我运行没有任何VM参数的类,这是输出:

--- start
09.11.2012 09:59:25 test.A main
SCHWERWIEGEND: SEVERE 1
09.11.2012 09:59:25 test.A main
SCHWERWIEGEND: SEVERE 2
--- end
Run Code Online (Sandbox Code Playgroud)

如您所见,仅记录SEVERE级别,因为这是JREs logging.properties的默认值.通话LogManager#readConfiguration() …

java logging runtime java.util.logging

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

使用Adobe Illustrator设置CSS类属性

我正在使用Adobe Illustrator创建SVG图像.我需要为SVG中的元素设置一些额外的属性,例如CSS class属性.我甚至想从自定义命名空间添加属性.

这怎么可能?自定义命名空间中的属性"很好",但该class属性是必须的.

css svg adobe-illustrator

8
推荐指数
1
解决办法
3925
查看次数

跳到最后一行,但保持在同一列

在Vim中,可以使用G(或第一行gg)跳转到最后一行,但该移动也会跳转到第一个非空格字符.

是否有一个键绑定跳转到第一行(或最后一行),但保持在同一列?

vim cursor

8
推荐指数
1
解决办法
1853
查看次数

获取组件的最后一次调整大小事件

当使用 ComponentListener 来获取调整大小事件的通知时,如果用户将窗口角拖动到新的大小,则可能会收到很多事件。

现在,我需要对调整大小事件进行一些昂贵的计算。如果这种情况经常发生,那就太多了。忽略大多数事件并仅对最后一个事件做出反应(例如,如果用户释放鼠标按钮)是可以的。问题是,我不知道如何找出最后一次调整大小事件是什么。如果我采取天真的方法:

this.addComponentListener(new ComponentAdapter() {
  @Override
  public void componentResized(final ComponentEvent e) {
    if (calculationInProgress){
      return;
    }

    calculationInProgress= true;
    doExpensiveCalculation();
    calculationInProgress= false;        
  }
});
Run Code Online (Sandbox Code Playgroud)

在最后一次计算后,窗口的大小可能会调整得更多,因此计算将与正确的最终尺寸不匹配。

有什么好的解决方案吗?

java swing resize

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

如何避免并行运行 Surefire 测试

我这里有一个应用程序,其中单元测试的编写方式无法并行运行。

\n\n

当使用 Maven 运行测试时,其中一些测试会因为这个原因而失败。\n我可以通过执行以下操作来验证它们是否并行运行

\n\n
System.out.println(System.currentTimeMillis() +">>> executing testXXX");\nSystem.out.println(System.currentTimeMillis() +">>> finished  testXXX");\n
Run Code Online (Sandbox Code Playgroud)\n\n

在每个方法的开始和结束处。\n输出为:

\n\n
1530602546964>>> executing testInstantiation                                                                                                                         \n1530602547036<<< finished  testInstantiation                                                                                                                         \n1530602547042>>> executing testSimilarNamedResources                                                                                                                 \n1530602547050>>> executing testTranslateWithMissingKey                                                                                                               \n1530602547051>>> executing testTryTranslateWithMissingKey                                                                                                            \n1530602547051<<< finished  testTryTranslateWithMissingKey                                                                                                            \n1530602547051>>> executing testTranslationMapWithMissingKey                                                                                                          \n1530602547055>>> executing testSilentlyIgnoringExceptionTranslationMapWithMissingKey                                                                                 \n1530602547055<<< finished  testSilentlyIgnoringExceptionTranslationMapWithMissingKey   \n
Run Code Online (Sandbox Code Playgroud)\n\n

正如我们所看到的,在 testSimilarNamedResources 启动后,其他一些测试也启动了。

\n\n

我尝试将 Surefire 插件配置为不并行运行:

\n\n
<build>                                                                                                                                                           \n   <plugins>\n     <plugin>\n       <groupId>org.apache.maven.plugins</groupId>\n       <artifactId>maven-surefire-plugin</artifactId>\n       <version>2.22.0</version>\n       <configuration>\n         <!--parallel>false</parallel-->\n         <threadCount>1</threadCount>\n         <perCoreThreadCount>false</perCoreThreadCount>\n       </configuration>\n     </plugin>\n   </plugins>\n</build>\n
Run Code Online (Sandbox Code Playgroud)\n\n

但它仍然并行执行这些测试。\n我运行 mvn 并选择-X查看我的配置是否已应用并得到以下输出:

\n\n
$ mvn -X test | grep …
Run Code Online (Sandbox Code Playgroud)

java junit maven maven-surefire-plugin

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

在渲染之前获取SVG中的文本宽度

我想在SVG的文本周围放一个矩形.我知道文本的高度(元素的font-size属性text).但宽度取决于实际内容.使用getBBox()getComputedTextLength()应该工作.但这仅在渲染后才有效.

有没有办法以其他方式指定?例如x,width相对于其他值定义和属性?我没有在SVG Spec中找到类似的东西.

size svg text width

6
推荐指数
1
解决办法
1639
查看次数

没有 XML 文件的 @HandlerChain 注释

可以通过 @HandlerChain 注释将 SoapHandler 添加到服务器端 Web 服务:

@WebService
@HandlerChain(file= "handler-chain.xml")
public class MyWS {
  ...
}
Run Code Online (Sandbox Code Playgroud)

但是,这需要在单独的 XML 文件中定义处理程序链。

对于客户端 Web 服务,可以完全以编程方式执行此操作:

final MyWSService service= new MyWSService(url);
service.setHandlerResolver(new MyHandlerResolver());
Run Code Online (Sandbox Code Playgroud)

有没有办法完全以编程方式为服务器端 Web 服务执行此操作?这意味着没有额外的 XML 文件?

java xml soap web-services

6
推荐指数
0
解决办法
314
查看次数