如何在没有根项目的情况下在多个maven项目上执行ad-hoc reactor构建?
这曾经可以在maven2中通过调用带有'-r'选项的mvn命令来实现,该选项将从工作目录中递归搜索项目,并在反应堆中组织它们以便以正确的顺序构建,即使项目没有共享父pom.xml.可选地,可以使用maven.reactor.includes和maven.reactor.excludes选项具体包括或排除某些项目.
我意识到传统的反应堆模式已从maven3中删除,但我无法弄清楚如何使用'make-like'反应堆模式实现此功能.
我是Maven的初学者.我一直在关注Maven By Example这本书.在6.13节中,作者演示了如何通过命令创建包含依赖项的JAR
mvn install assembly assembly
Run Code Online (Sandbox Code Playgroud)
我按照第6章的例子,除了我用单元测试跳过了部分.我回过头来确保我没有跳过一步.但是当我尝试上面的命令时,我得到了这个错误输出:
[INFO]
[INFO] --- maven-jar-plugin:2.3.2:jar (default-jar) @ simple-weather ---
[INFO]
[INFO] <<< maven-assembly-plugin:2.2-beta-5:assembly (default-cli) @ simple-weather <<<
[INFO]
[INFO] --- maven-assembly-plugin:2.2-beta-5:assembly (default-cli) @ simple-weather ---
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 2.094s
[INFO] Finished at: Wed Mar 21 15:53:03 EDT 2012
[INFO] Final Memory: 5M/10M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-assembly-plugin:2.2-beta-5:assembly (default-cli) on project simple-weather: Error readi
ng assemblies: No assembly descriptors found. -> [Help …Run Code Online (Sandbox Code Playgroud) 从昨天开始,CVS历史记录中的Author列在我的Eclipse IDE中消失了.我已经浏览了Eclipse中的所有菜单和各种Google搜索,但无法弄清楚如何将其添加回来.有人有线索吗?
我在64位Windows 7上使用最新的Eclipse(Helios).我使用以下步骤显示CVS历史记录:右键单击Project Explorer => Team => Show History下的文件名.
谢谢!
我有一个接收channelInterestChanged回调的处理程序,然后isWritable()在该回调中测试通道的方法,writeRequest如果是,则触发下游事件.
有时如果在打开通道时发生这种情况,通道会抛出一个异常事件,其原因为java.nio.channels.NotYetConnectedException.
应该isWritable() == true假设isConnected() == true还是我搞砸了?
例:
@Override
public void channelInterestChanged(ChannelHandlerContext ctx,
ChannelStateEvent e) throws Exception {
MyMessage msg;
while(ctx.getChannel().isWritable()){
msg = queue.poll();
Channels.write(ctx, Channels.succeededFuture(ctx.getChannel()), msg);
}
}
Run Code Online (Sandbox Code Playgroud)
堆栈跟踪:
java.nio.channels.NotYetConnectedException
at org.jboss.netty.channel.socket.nio.AbstractNioWorker.cleanUpWriteBuffer(AbstractNioWorker.java:696)
at org.jboss.netty.channel.socket.nio.AbstractNioWorker.writeFromUserCode(AbstractNioWorker.java:421)
at org.jboss.netty.channel.socket.nio.NioClientSocketPipelineSink.eventSunk(NioClientSocketPipelineSink.java:116)
at org.jboss.netty.channel.Channels.write(Channels.java:733)
at org.jboss.netty.handler.codec.oneone.OneToOneEncoder.handleDownstream(OneToOneEncoder.java:65)
at org.jboss.netty.channel.Channels.write(Channels.java:733)
at org.jboss.netty.handler.codec.oneone.OneToOneEncoder.handleDownstream(OneToOneEncoder.java:65)
at org.jboss.netty.channel.Channels.write(Channels.java:733)
at org.jboss.netty.channel.Channels.write(Channels.java:694) <--- this call is guarded by `isWritable()`
at foo.bar.MyHandler.channelInterestChanged(MyHandler.java:44) <--- My handler
at org.jboss.netty.handler.codec.oneone.OneToOneDecoder.handleUpstream(OneToOneDecoder.java:61)
at org.jboss.netty.channel.Channels.fireChannelInterestChanged(Channels.java:361)
at org.jboss.netty.channel.Channels$3.run(Channels.java:349)
at …Run Code Online (Sandbox Code Playgroud) 我试图返回自然数的位数,我几乎就在那里.我不知道如何计算数字.
private static int numberOfDigits(NaturalNumber n) {
NaturalNumber zero = new NaturalNumber2(0);
int a = 0;
if (n.compareTo(zero) != 0) {
a = n.divideBy10();
numberOfDigits(n);
}
return a;
}
Run Code Online (Sandbox Code Playgroud)
我知道我将返回n的最后一个剩余部分,它是0,但我如何计算递归?