Tag: java

使用Java的Selenium – 驱动程序可执行文件的path必须由webdriver.gecko.driver系统属性设置

我正在尝试启动Mozilla,但仍然收到此错误: 线程“main”中的exceptionjava.lang.IllegalStateException:驱动程序可执行文件的path必须由webdriver.gecko.driver系统属性设置; 有关更多信息,请参阅https://github.com/mozilla/geckodriver 。 最新版本可以从https://github.com/mozilla/geckodriver/releases下载 我正在使用Selenium 3.0.01 Beta版和Mozilla 45 。 我也尝试过使用Mozilla 47 。 但仍然是同样的事情。

Google Play服务更新至版本13后,出现错误

我怎样才能解决这个错误? 导致:java.lang.illegalargumentexception 11-01 11:08:12.845:E / AndroidRuntime(28885):引起:java.lang.IllegalStateException:应用程序的AndroidManifest.xml中的元数据标签没有正确的值。 预计4030500,但发现0.您必须在元素中有以下声明: google-play-services_lib清单: <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.google.android.gms" android:versionCode="4030530" android:versionName="4.0.30 (889083-30)" > <uses-sdk android:minSdkVersion="8"/> </manifest> public void loginGooglePlus() { aHelper.setup(this, GameHelper.CLIENT_APPSTATE | GameHelper.CLIENT_GAMES); mHelper = aHelper.getAppStateClient(); //crash is here mHelper.connect(); } 完整的错误日志: 11-01 11:38:13.507: E/AndroidRuntime(31297): FATAL EXCEPTION: main 11-01 11:38:13.507: E/AndroidRuntime(31297): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.company.application.android.aja/com.company.application.android.aja.BeetleBattleAndroidActivity}: java.lang.IllegalStateException: The […]

为什么在Java 8中split有时会在结果数组开始时删除空string?

在Java 8之前 ,我们在空string上分割就像 String[] tokens = "abc".split(""); 拆分机制会在标有|地方拆分 |a|b|c| 因为在每个字符之前和之后存在空格"" 。 因此,它会首先产生这个数组 ["", "a", "b", "c", ""] 后来将删除尾随的空string (因为我们没有明确提供负值来limit参数),所以最终会返回 ["", "a", "b", "c"] 在Java 8分裂机制似乎已经改变。 现在当我们使用 "abc".split("") 我们将得到["a", "b", "c"]数组而不是["", "a", "b", "c"]所以它看起来像空string在开始时也被删除。 但是这个理论因为例如失败了 "abc".split("a") 在开始["", "bc"]返回数组为空string。 有人可以解释一下这里发生了什么,以及在Java 8中如何改变这种情况的规则?

在Java中投射variables

我想知道有没有人可以告诉我如何铸造工程? 我明白什么时候该做,但不是真的如何。 对于原始数据types我理解了一些,但是当涉及到投射对象时,我不明白它是如何工作的。 一个Objecttypes的对象怎么会突然被抛出,比方说MyType (仅仅是一个例子),然后得到所有的方法?

是否有可能从一个InputStream超时读取?

具体来说,问题是写一个这样的方法: int maybeRead(InputStream in, long timeout) 如果数据在“超时”毫秒内可用,则返回值与in.read()相同,否则为-2。 在方法返回之前,所有派生的线程都必须退出。 为了避免参数,这里的主题java.io.InputStream,由Sun(任何Java版本)所记载。 请注意,这不像看起来那么简单。 以下是Sun的文档直接支持的一些事实。 in.read()方法可能是不可中断的。 在Reader或InterruptibleChannel中包装InputStream并没有帮助,因为所有这些类都可以做的是InputStream的调用方法。 如果可以使用这些类,那么可以编写一个解决scheme,直接在InputStream上执行相同的逻辑。 in.available()返回0总是可以接受的。 in.close()方法可能会阻塞或者什么也不做。 没有通用的方法来杀死另一个线程。

正则expression式用于在不包含单引号或双引号时使用空格分割string

我是新来的正则expression式,并希望你的帮助。 我试图放在一起的expression式将使用不包含单引号或双引号的所有空格拆分示例string。 我的最后一次尝试看起来像这样:( (?!") ,并不是很有效,它正在引用之前的空间分裂。 示例input: This is a string that "will be" highlighted when your 'regular expression' matches something. 期望的输出: This is a string that will be highlighted when your regular expression matches something. 请注意, "will be"和'regular expression'保留单词之间的空格。

Java – 转义string,以防止SQL注入

我试图把一些反SQL注入在Java中,我发现很难与“replaceAll”string函数工作。 最终,我需要一个函数,将任何现有的\ \\ ,任何" \" , \"任何\'和任何\n为\\n以便当string被MySQL评估时,SQL注入将被阻止。 我已经拿起了一些我正在使用的代码,所有的函数都让我的眼睛变得疯狂。 如果有人碰巧有这样的例子,我将不胜感激。

在循环内部或外部声明variables

为什么以下工作正常? String str; while (condition) { str = calculateStr(); ….. } 但是这个被认为是危险的/不正确的: while (condition) { String str = calculateStr(); ….. } 是否有必要在循环之外声明variables?

将外部jar(lib / *。jar)添加到IntelliJ IDEA项目的正确方法

在IntelliJ IDEA中创build一个新的Java项目时,会创build以下目录和文件: ./projectname.iml ./projectname.ipr ./projectname.iws ./src/ 我想configurationIntelliJ IDEA以将依赖项JAR包含在./lib/*.jar中。 在IntelliJ IDEA中实现这一点的正确方法是什么?

如何从RepaintManager生成exception

结合我的问题 ( 可能 ),我发现了另一种exceptiontypes,我无法从SwingWorker线程捕获和打印出来。 我怎样才能生成RepaintManagerexception? 我读了这个CheckThreadViolationRepaintManager和Alexander Potochkin 这个方法 ,但似乎没有解决我的问题。