Maven是否支持增量构建?

如何使用Maven来支持增量构建? 某处有指南吗? (谷歌的结果令人失望)

为什么select()在我的程序中消耗了这么多CPU时间?

我有几个使用MINA的Java应用程序,它们都使用20个MINA线程。 一个应用程序为大约10,000个并发连接提供服 20可能是该应用程序的一个合理的线程数,虽然我还没有完全描述它(这个问题正在进行中)。 另一个应用程序一次只能提供大约15个连接,但启动IO工作,因此它们非常繁忙,无论如何都有20个MINA线程,这显然太多了。 对我来说很奇怪的是,两个应用程序总是把他们的CPU时间的30%,有时高达60%用于MINA的select()方法,在VisualVM中进行了分析。 调用堆栈如下所示: java.lang.Thread.State: RUNNABLE at sun.nio.ch.EPollArrayWrapper.epollWait(Native Method) at sun.nio.ch.EPollArrayWrapper.poll(EPollArrayWrapper.java:228) at sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:81) at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:87) – locked (a sun.nio.ch.Util$2) – locked (a java.util.Collections$UnmodifiableSet) – locked (a sun.nio.ch.EPollSelectorImpl) at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:98) at org.apache.mina.transport.socket.nio.NioProcessor.select(NioProcessor.java:72) at org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:1093) at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) at java.lang.Thread.run(Thread.java:722) 它似乎是基于繁忙的民意调查,这对我来说听起来真的不对。 当我看到那么高的数字时,我应该担心吗? 是什么导致这个? 这是我需要优化的东西还是更类似于睡眠或闲置程序? 如果它更像是一个睡眠例程,它会以某种方式被安排为比其他CPU工作更低的优先级? 更新: 这个线程似乎是同一个问题。 我遵循了它的建议,现在正在运行Java 1.7.0_45,但我仍然看到在具有10k连接的应用程序中, select占用高达90%的CPU时间。 我们正在使用MINA 2.0.4,这意味着修复了相关的错误 […]

带套接字的大文件传输

当我使用套接字编程传输大文件时,收到的文件不完整,即它是一个mp3文件,当我播放声音时很奇怪。 代码是: 服务器端: File myFile = new File(“abc.mp3”); { Socket sock = servsock.accept(); int packetsize=1024; double nosofpackets=Math.ceil(((int) myFile.length())/packetsize); BufferedInputStream bis = new BufferedInputStream(new FileInputStream(myFile)); for(double i=0;i<nosofpackets+1;i++) { byte[] mybytearray = new byte[packetsize]; bis.read(mybytearray, 0, mybytearray.length); System.out.println("Packet:"+(i+1)); OutputStream os = sock.getOutputStream(); os.write(mybytearray, 0,mybytearray.length); os.flush(); } } 客户端: int packetsize=1024; FileOutputStream fos = new FileOutputStream(“zz.mp3”); BufferedOutputStream bos […]

JAXB required = true似乎不需要

我们有这个JAXB注释: @XmlElement(name = “Strategy”, required = true) protected List strategy; 如果没有Strategy元素存在,则不会抛出exception..为什么会这样? 我们不应该得到例外吗?

m2Eclipse插件:“解析工作空间工件”有什么作用?

如果我问一个可能微不足道的问题,我很抱歉,但是我很难找到Resolve Workspace Artifacts在Eclipse IDE的Maven构建窗口中使用M2Eclipse插件做了什么。 我是指这个: 有人有什么主意吗? 我尝试了google-ing和stackoverflow-ing解决方案; 有很多错误请求/报告,但没有明确的此选项说明。 谢谢您的帮助。

Java中是否有用于访问维基百科数据的API

我想知道:有没有API或查询界面可以通过它访问维基百科数据?

如何获取String的所有子序列组合(在Java或C ++等中)

假设我有一个字符串“12345”我应该获得此字符串的所有子序列组合,例如: – > 1 2 3 4 5 – > 12 13 14 15 23 24 25 34 35 45 – > 123 124 125 234 235 345 – > 1234 1235 1245 1345 2345 – > 12345 请注意,我将它们分组在不同数量的字符中但未更改其顺序。 我需要一个方法/函数来做到这一点。

编译器优化:Java字节码

我目前正在编写一个针对Java字节码的玩具编译器。 我想知道在编写.class文件之前是否存在可以在发出的字节码中进行的各种简单窥孔优化的某种目录,可能是摘要。 我实际上知道一些具有此function的库,但我想自己实现它。

如何同时运行两个方法

我有这段代码: public static void main(String[] args) { Downoader down = new Downoader(); Downoader down2 = new Downoader(); down.downloadFromConstructedUrl(“http:xxxxx”, new File(“./references/word.txt”), new File(“./references/words.txt”)); down2.downloadFromConstructedUrl(“http:xxxx”, new File(“./references/word1.txt”), new File(“./references/words1.txt”)); System.exit(0); } 是否可以同时运行这两种方法: down.downloadFromConstructedUrl()和down2.downloadFromConstructedUrl() ? 如果是这样,怎么样?

Rock-Paper-Scissor的可扩展解决方案

刚刚经历了游戏的变种: Rock-Paper-Scissor-Lizard-Spock 我已经为传统的RPS问题编写了一个Java代码,但是当我尝试将代码扩展到更新版本的游戏(RPSLS)时……我觉得我的代码非常糟糕。 这是一个片段: if (player1.equals(“ROCK”) && player2.equals(“SCISSORS”)) { winner = 1; } // Paper covers rock… else if (player1.equals(“PAPER”) && player2.equals(“ROCK”)) { winner = 1; } // Scissors cut paper… else if (player1.equals(“SCISSORS”) && player2.equals(“PAPER”)) { winner = 1; } else { winner = 2; } 我意识到代码不能轻易扩展到新版本 – 以及超过2个玩家。 这主要是因为多个if / else或switch / cases。 […]