如何计算java字符串中的空格?

我需要计算我的字符串中的空格数,但是当我运行它时,我的代码给了我一个错误的数字,出了什么问题? int count=0; String arr[]=s.split(“\t”); OOPHelper.println(“Number of spaces are: “+arr.length); count++;

创建名为’sessionFactory’的bean时出错:MalformedParameterizedTypeException

任何建议都会得到赞赏。 我很难过…… 问题 在我的笔记本电脑上,只要我们的应用程序尝试加载application-config.xml,我就会得到一个java.lang.reflect.MalformedParameterizedTypeException。 完全相同的代码适用于我的桌面和我的同事的台式机/笔记本电脑。 但是在我的笔记本电脑上它会抛出这个错误。 由于我的笔记本电脑和台式机完全相同的开发环境(Mac OS X Leopard上的Eclipse中的Java 1.6 Maven项目),我通过执行以下操作缩小了原因: 检查了Subversion的一个新项目(所以没有代码差异) 复制并替换我的整个Eclipse目录(因此没有Eclipse版本/插件差异) 复制并替换我的整个.m2目录(因此没有maven /项目依赖性差异) 什么可能导致这个错误在一个地方而不是另一个? 下面是相关bean的片段和错误…… 代码段:application-config.xml … … … … … com.saic.gnosis.model com.saic.gnosis.model.observable false 2 9 10 0 代码段:JUnit错误跟踪: java.lang.ExceptionInInitializerError at com.saic.gnosis.updater.task.ConnectionCommandFileWriterTask.(ConnectionCommandFileWriterTask.java:16) at com.saic.gnosis.updater.CiscoDeviceConfiguratorTest.initializeSpyObjects(CiscoDeviceConfiguratorTest.java:120) at com.saic.gnosis.updater.CiscoDeviceConfiguratorTest.initializeTestObjects(CiscoDeviceConfiguratorTest.java:110) at com.saic.gnosis.updater.CiscoDeviceConfiguratorTest.setUp(CiscoDeviceConfiguratorTest.java:105) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) at […]

ProcessBuilder在Mac上提供“没有这样的文件或目录”,而Runtime()。exec()工作正常

我有一个在Playframework上运行的应用程序,它需要对一些video文件进行编码。 我用了 Process pr = Runtime.getRuntime().exec(execCode) 为此(它完美地工作),但由于我需要输出流和错误流,我试图使用ProcessBuilder(也建议使用)。 但我无法让它工作(在MacBook上测试)。 Runtime方法和ProcessBuilder之间有根本区别吗? 这是我的ProcessBuilder代码(完全相同的代码在被Runtime.getRuntime().exec()替换时有效Runtime.getRuntime().exec() ) String execCode = “/opt/local/bin/ffmpeg -i file […]”; ProcessBuilder pb = new ProcessBuilder(execCode); pb.redirectErrorStream(true); pb.directory(new File(“/Users/[…]/data/”)); Process pr = pb.start(); 这是控制台输出: 11:00:18,277 ERROR ~ There was a problem with with processing MediaFile[13] with error Error during coding process: Cannot run program “/opt/local/bin/ffmpeg -i /Users/[…]/data/media/1/1/test.mov […] […]

如何在Selenium中使用已经打开的firefox进行测试

这个宣言 WebDriver driver = new FirefoxDriver(); 总是打开Firefox的新实例窗口。 它不使用已经打开的Firefox。 任何人都可以让我知道如何使用已经打开的Firefox进行测试而不是打开一个新的?

Java:处理子线程中的exception

我更喜欢在main方法附近的调用堆栈中进一步使用exception处理逻辑。 我喜欢这种方法……但是,我创建了一个线程,其中run()内部的一些方法调用可能会抛出exception。 我真的想看看是否有一种方法可以将这些exception抛回到父线程? 我能想到的最好的方法是在实现Runnable的对象中设置一个变量。 此变量是一个包含错误消息的字符串,然后使用类加载器在父线程中正确地重新创建相同的exception。 我想知道的是,是否有一种不那么混乱的方式来获得我想要的东西? (为了能够确保在子线程中抛出的任何exception都使用相同的exception处理逻辑来处理,就好像它在主线程/代码重用中运行一样)。

在multithreadingJava程序中,每个线程都有自己的System.out副本吗?

我正在编写一个multithreadingJava程序,其中每个线程可能需要将其标准输出重定向到单独的文件。 每个线程都有自己的文件。 是否可以在“每个线程”的基础上重定向System.out,还是在所有线程中更改为System.out全局?

JSch记录器 – 我在哪里可以配置级别

如何配置JSch记录器的级别? 是否可以通过XML配置Log4J?

使用JSTL会导致更改时出现deferredExpression错误

我最近根据这篇文章的建议删除了我项目中的所有scriptlet。 但是现在,如果我尝试对我的一个视图进行更改,则会出现deferredExpression错误。 要摆脱错误,我只需要终止,然后重新启动项目。 这里发生了什么? eclipse无法动态编译jstl吗? 有什么我可以改变的,所以每次做出改变时我都不需要重新部署吗? 堆栈跟踪 java.lang.NoSuchFieldError: deferredExpression at org.apache.taglibs.standard.tag.common.core.ForEachSupport.release(ForEachSupport.java:212) at org.apache.jasper.runtime.TagHandlerPool.release(TagHandlerPool.java:166) at org.apache.jsp.l.profile_jsp._jspDestroy(profile_jsp.java:114) at org.apache.jasper.runtime.HttpJspBase.destroy(HttpJspBase.java:88) at org.apache.jasper.servlet.JspServletWrapper.destroy(JspServletWrapper.java:428) at org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:139) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:329) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) at com.google.appengine.tools.development.PrivilegedJspServlet.access$101(PrivilegedJspServlet.java:23) at com.google.appengine.tools.development.PrivilegedJspServlet$2.run(PrivilegedJspServlet.java:59) at java.security.AccessController.doPrivileged(Native Method) at com.google.appengine.tools.development.PrivilegedJspServlet.service(PrivilegedJspServlet.java:57) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1166) at com.google.appengine.tools.appstats.AppstatsFilter.doFilter(AppstatsFilter.java:141) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) at com.appspot.MySite.Controller.FacebookLogin.doFilter(FacebookLogin.java:140) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) at com.google.appengine.tools.development.HeaderVerificationFilter.doFilter(HeaderVerificationFilter.java:35) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) at […]

KeyTypedEvent KeyEvent的KeyCode始终为0?

我在NetBeans IDE中有一个Java Swing应用程序。 我制作了一个表单并将KeyListener附加到我的各种控件中: jButton1.addKeyListener(new java.awt.event.KeyAdapter() { public void keyTyped(java.awt.event.KeyEvent evt) { keyTypedEvent(evt); } }); 和keyTypedEvent定义如下: private void keyTypedEvent(java.awt.event.KeyEvent evt) { System.out.println(evt); appendDisplay(String.valueOf(evt.getKeyChar())); } 我在evt添加了一个println ,看看会发生什么,并validation我的keylistener是否正常工作。 当我构建并运行我的应用程序时,我意识到输出似乎总是有一个keycode = 0 为了validation这一点,我将println更改为evt.getKeyCode()并且它始终返回0。 我可能完全误解了KeyCode的function,但我认为它可以与Oracle文档中的值进行协调: http://docs.oracle.com/javase/7/docs/api/constant-values.html#java.awt.event.KeyEvent.VK_ESCAPE 例如,VK_ESCAPE的值为27。

Controller.java文件中的Javafx 2.0操作方法Application.getParameters()

考虑以下样本。 如何访问控制器中应用程序的参数/参数? 谢谢。 注意:我曾尝试将App.java和MyController.java混合在一个Class文件中,但没有帮助。 App.java(简化): public class App extends Application { public static void main(String[] args) { Application.launch(App.class, args); } @Override public void start(Stage primaryStage) throws Exception { // output arguments in console System.out.println(getParameters().getNamed().toString()); Parent root = FXMLLoader.load(getClass().getResource(“MyView.fxml”)); final Scene scene = new javafx.scene.Scene(root); primaryStage.setScene(scene); primaryStage.show(); } } MyController.java(简化): public class MyController implements Initializable { […]