捕获未跟随某些数字的数字流

我想捕获一些未跟随某些数字的数字流。 例如 input = abcdef lookbehind 123456….. asjdnasdh lookbehind 789432 我想使用负向前瞻捕获789432而不是123。 我试过(?<=lookbehind )([\d])+(?!456)但它捕获了123456和789432 。 使用(?<=lookbehind )([\d])+?(?!456)仅捕获1和7 。 分组不是我的选择,因为我的用例不允许我这样做。 有什么方法可以使用纯正则表达式捕获789432而不是123吗? 对答案的解释表示赞赏。

JRE安装如何工作?

我正在打包我的软件,并想知道JRE的安装是如何工作的。 它是否只是复制本地系统上的二进制文件并相应地设置类路径或安装程序完成任何其他步骤? 对于Windows,JRE二进制文件存储在C:\Program Files\Java\jre7中,我可以将此文件夹复制到其他计算机(具有相同的处理器32位或64位)以使JRE正常工作。 如果是这样,那么需要设置的环境变量是什么?

如何使用emma为多模块maven项目计算Hudson中的代码覆盖率,但只运行一次测试

我们有几个多模块项目,我想运行emma,但我不希望测试运行两次,因为这会导致Hudson项目主页上的误导性统计信息,因为unit testing会被计算两次。 对于单个模块项目,我们可以省略安装目标并只使用clean emma:emma来运行测试一次,有没有什么方法我们只能使用emma检测的字节代码进行测试,然后在不运行测试的情况下构建和安装项目工件第二次? 使用-Dmaven.tests.skip = true会导致emma失败。 对于完整版本(即mvn版本:执行),测试应该是未经检测的。

IPC建议大量小数据

我们将实施一个多进程软件,我们正在寻找一个合适的IPC。 事实: 我们将使用Java(如果我们面临时间关键的话,我会使用C) 所有进程都在一台Unix机器上。 这些进程每秒发送大量(约1000个)小(约4k)数据。 你推荐什么IPC技术? Web服务,RMI,TCP套接字,Unix套接字,管道,……?

ANTLR4 Lexer错误报告(违规字符长度)

我正在使用ANTLR4为某种语言开发一个小型IDE,并且当词法分析器无法匹配时需要强调错误的字符。 在这种情况下,内置的org.antlr.v4.runtime.ANTLRErrorListener实现会向stderr输出一条消息,类似于: line 35:25 token recognition error at: ‘foo\n’ 我没有问题理解如何获取有关错误的行和列的信息(作为参数传递给syntaxError回调),但如何在回调中获取’foo\n’字符串? 当解析器是错误的来源时,它会将违规令牌作为syntaxError回调的第二个参数传递,因此提取有关错误输入的开始和停止偏移的信息变得微不足道,这也在参考书中进行了解释。 但是当源是词法分析器时呢? 在这种情况下,回调中的第二个参数为null,大概是因为词法分析器无法形成令牌。 我需要不匹配字符的长度才能知道要强调多少,但在调试我的监听器实现时,我无法在提供的回调参数中的任何地方找到此信息(除了通过字符串操作从提供的错误消息中提取它,这只是错误)。 ‘foo\n’字符串显然可以以某种方式获得,所以我错过了什么? 我怀疑我可能正在寻找错误的地方,我应该考虑扩展DefaultErrorStrategy ,在那里形成错误消息。

Java / AWT / Swing:关于validation和大小

我对如何在Java中管理组件的布局感到困惑(我想手动完成它而不是由布局管理器处理它)。 Component有以下方法: layout , doLayout validate , invalidate , revalidate validateTree , invalidateTree setSize , setBounds , setPreferredSize getSize , getBounds , getPreferredSize paint , repaint , update updateUI 早些时候,我试图重载上面的各种组合,但我不太确定哪一个重载,我必须在内部做什么以及我必须在子组件上调用哪些函数。 我现在在做的是: 只有超载doLayout以上。 在doLayout ,对于所有子组件: 打电话给child.doLayout 。 调用child.setBounds (有时在child.setBounds之前,有时在after之后,有时两者都有)。 在doLayout ,因为我正在进行布局,所以我自动计算了它的首选大小。 在doLayout ,调用this.setPreferredSize 。 在所有构造函数中,调用: this.setLayout(null) 。 在一些构造函数中,调用: this.doLayout 。 (如果我不这样做,它就无法正确显示。) 当我做一些必须重做布局的操作时(例如,我动态地在某个容器中添加了一些文本字段,因此我想调整容器以及相应的所有父项),我调用container.revalidate() 。 剩下的问题: 我想我还没有真正理解什么函数调用什么,我有什么重载和如何处理。 在doLayout […]

ECDSA签名Java vs Go

我正在尝试学习一些Go和区块链。从ECDSA签名开始。 试图弄清楚如何测试我是否有正确工作的ECDSA签名的Go实现,我想我会尝试在Java中创建一个类似的版本并比较结果,看看我是否可以让它们匹配。 所以Java尝试: public static void main(String[] args) throws Exception { //the keys below are previously generated with “generateKey();” and base64 encoded generateKey(); String privStr = “MEECAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQcEJzAlAgEBBCAQ7bMVIcWr9NpSD3hPkns5C0qET87UvyY5WI6UML2p0Q==”; String pubStr = “MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAES8VdACZT/9u1NmaiQk0KIjEXxiaxms74nu/ps6bP0OvYMIlTdIWWU2s35LEKsNJH9u5QM2ocX53BPjwbsENXJw==”; PrivateKey privateKey = base64ToPrivateKey(privStr); PublicKey publicKey = base64ToPublicKey(pubStr); String str = “This is string to sign”; byte[] signature = signMsg(str, privateKey); boolean ok = […]

将文件从目录复制到另一个目录,具有文件和目录的路径

在我的Android应用程序中,我想将文件从一个目录复制到另一个目录,我有文件filePath的路径, dirPath在必须复制文件的内容中有目录dirPath的路径。 我尝试了很多方法,但没有任何帮助,有些方法只能制作一些空的(0 kb)文件,其名称与我的文件名不同。 请帮助请:) 这是代码的一部分,如果它对你有用,我有两个按钮用于Gallery和Camera,我必须从那里选择图像 Button btnCam = (Button) dialog.findViewById(R.id.btncamera); btnCam.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { dialog.cancel(); Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); startActivityForResult(cameraIntent, 2500); } }); //end of camera button Button btnGal = (Button) dialog.findViewById(R.id.btngalary); btnGal.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { dialog.cancel(); Intent i = new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI); […]

UnsatisfiedLInkError Eclipse JNI(从命令行工作但不在Eclipse中工作)包名称

我可以通过键入“java main”从命令行运行程序,其中main.java和main.class位于同一目录以及任何相关的类中。 这很好。 当我尝试在Eclipse中运行相同的程序时,我得到了不满意的链接错误。 我认为这与使用的JVM有关。 我认为命令行java调用是使用不同的JVM然后eclipse。 如何在命令行中指定java使用哪个JVM? 当我在Eclipse中运行使用本机库的程序时,我得到一个UnsatisfiedLinkError。 这不是一个典型的“找不到….”的链接错误我相信它实际上已经找到了该文件,但还有一些其他问题。 线程“main”中的exceptionjava.lang.UnsatisfiedLinkError:com.me.this.MyClass.MyMethod(Ljava / lang / String;)I 你可以看到,如果它找不到共享库,它会说: 线程“main”中的exceptionjava.lang.UnsatisfiedLinkError:java.library.path中没有MySharedFile.so 所以我相信它正在寻找文件。 其他一些相关的问题是,如果我从命令行而不是在eclipse中运行程序,它会找到.so并完美地运行程序。 此外,我之前在使用较旧的1.6 JVM的另一个Eclipse中运行了该程序。 我试图在这次日食中使用它,但它没有帮助。 这是找到.so共享文件的问题吗? 或者完全不同的东西,比如我正在使用错误的JVM。 我在java命令行程序中使用了strace,看起来它正在使用我现在在Eclipse中使用的新1.7jdk,它将无法正常工作。 .so位于/ usr / lib64中,我还在运行配置的vm参数中创建了一个-Djava.library.path = …条目,以防万一。 我添加了这些尝试捕获负载: static { try{ System.loadLibrary(“MyAwesomeLibrary”); System.out.println(“MyAwesomeLibrary library loaded \n”); } catch(UnsatisfiedLinkError e){ System.out.println(“Did not load library”); e.printStackTrace(); } } 我得到: MyAwesomeLibrary library loaded Exception in […]

扫描程序错误,我无法弄清楚:NoSuchElementException

它在do-while循环中的第三行崩溃,并且不等待我的输入: input = kb.nextInt(); 堆栈跟踪: 线程“main”java.util.NoSuchElementException中的exception 在java.util.Scanner.throwFor(未知来源) 在java.util.Scanner.next(未知来源) 在java.util.Scanner.nextInt(未知来源) 在java.util.Scanner.nextInt(未知来源) 在main.MainDriver.main(MainDriver.java:50) 相关代码: do { displayFullMenu(); System.out.print(“Selection: “); input = kb.nextInt(); switch (input) { //Create new survey case 1: currentSurvey = new Survey(); break; //Display current survey case 2: currentSurvey.display(); break; //Save current survey case 3: saveSurvey(currentSurvey); break; //Load a survey case 4: currentSurvey = loadSurvey(); […]