草庐IT

start-stop-daemon

全部标签

java - 如何从 Java Web Start 应用程序设置默认 HTTP 用户代理?

我们在Java应用程序中定义了一个包含以下内容的自定义HTTP用户代理:软件版本用户语言平台信息(操作系统系列+版本名称)Java版本我们希望此用户代理应用于应用程序创建的所有HTTP连接,包括我们手动打开的连接,也包括JRE自动创建的连接,例如当JEditorPane解析外部图像时在HTML代码中引用。为此,我们在应用程序启动时将"http.agent"系统属性设置为点1/2/3(让JREaddbyitselftheJavaversion):System.setProperty("http.agent",Version.getAgentString());当我们从jar而非JavaW

Java Web Start - 使用另一个 native 依赖项加载 native 依赖项

我正在使用JavaWebStart启动依赖于某些第三方native库的Java应用程序。然后,这些native库随后使用LoadLibrary/dlopen加载另一个native库(commonLib)作为它们的依赖项。当不使用WebStart时,当native库位于同一目录时,一切都按预期工作。但是,WebStart要求将native库打包到jar文件中并在jnlp文件中引用,我就是这么做的:native库加载正常,但它们无法加载其依赖项commonLib-C++LoadLibrary/dlopen调用失败,因为该文件存在于某个jar/cache文件夹中,而不是在当前库搜索路径上。在

java - 使用 Jackson "Unexpected token (START_OBJECT), expected VALUE_STRING: Expected array or string."使用 LocalDateTime 将 JSON 解析为 POJO

我在这里阅读了很多关于将JSON解析为Java对象的帖子,在我引入LocalDateTime之前,我的解析工作正常。我曾尝试使用Java8解析器、JSR310模块并构建自定义-下面描述了每个方面的障碍。任何帮助将不胜感激!这是我的JSON字符串,由Jackson从另一个POJO创建:{"validEscortsWTheirSpecReqs":"MAYBE","modifiedDateTimeNeedToBeThere":{"dayOfMonth":6,"dayOfWeek":"MONDAY","month":"FEBRUARY","year":2017,"hour":10,"minut

java - 在 Java 中从 char[],start,length 创建字符串的有效方法

我们使用JavaSAX来解析非常大的XML文件。我们的characters实现如下所示:@Overridepublicvoidcharacters(charch[],intstart,intlength)throwsSAXException{Stringvalue=String.copyValueOf(ch,start,length);...}(ch[]SAX传递的数组往往很长)但我们最近遇到了一些性能问题,探查器向我们显示超过20%的CPU使用率高于调用String.copyValueOf(它调用了newString(ch,start,length)引擎盖下)。有没有比String.

java - PrintGCApplicationStoppedTime 报告的 "stop the world"时间真的准确吗?

我正在尝试使用-XX:+PrintGCApplicationStoppedTimeJVM选项估计Java应用程序中的线程被垃圾收集“停止世界”暂停阻塞的时间。我解析gc.log文件并将报告的停止时间添加到GC时间戳(-XX:+PrintGCDateStamps)以获得GC事件的“开始和停止”时间戳。应用程序线程测量发送HTTP请求和获取响应所花费的时间,并记录发送请求时的时间戳和请求的持续时间。当我将GC事件时间戳与应用程序(DATA)时间戳进行比较时,我得到了一些奇怪的结果:Type|Starttime|Starttimediff|Endtime|Endtimediff|Durati

java - 如何在浏览器和 Java Web Start 小程序之间进行通信

现状我们目前使用小程序来执行一些操作,之后它会重定向当前页面。在其核心中,您可以看到如下所示的小程序:publicclassExampleAppletextendsApplet{@Overridepublicvoidinit(){Buttonredirect=newButton("Redirect");this.add(redirect);finalStringtarget=this.getParameter("targetPage");redirect.addActionListener((ActionEvente)->{try{getAppletContext().showDocu

java - java线程间通信: stopping all threads when one finishes its task

我有n个线程并行运行,每个线程都执行一些自定义逻辑。但是,我的要求是,当任何一个线程完成执行时,所有其他线程都应该停止执行并返回。实现它的最佳方法是什么?我想通过共享boolean变量来做到这一点。当任何线程完成执行时,它将设置boolean值。所有线程都定期读取此变量并在设置时退出。此外,我的自定义逻辑是一个无限循环,一旦我知道某个其他线程已完成执行,我想在当前迭代后停止执行。这样做的正确方法是什么? 最佳答案 使用ExecutorService及其.invokeAny()方法(注:也有超时的版本)。来自Javadoc:Execu

java - 有什么方法可以让 Java Web Start 自动安装快捷方式?

我们正在部署一个WebStart应用程序,我和其他开发人员知道如何安装快捷方式(Windows上的控制面板->Java,OSX上的/Applications/Utilities/JavaPreferences),但我们没有理由相信最终用户知道如何做到这一点(或者甚至知道它可以做到)。有没有办法在第一次运行时自动安装快捷方式,或者(最好)询问用户是否愿意安装快捷方式?我一直在寻找,但Sun/Oracle文档都说要通过Java缓存查看器,我觉得向最终用户询问这完全是荒谬的。 最佳答案 JNLP规范允许指定在运行JNLP文件时创建快捷方式

java - 为什么当 start() 已经存在时在 JavaFX 应用程序中使用主要方法

JavaFX应用程序的起点是启动方法。但在示例JavaFX应用程序中,还包含一个主要方法。在这种特殊情况下,main方法的用途是什么?为什么需要将start()定义为JavaFX的起点。我们不能像Swings一样简单地使用main方法来定义一个起点吗?HelloWorld应用示例:publicclassHelloWorldextendsApplication{@Overridepublicvoidstart(StageprimaryStage){Buttonbtn=newButton("HelloWorld");btn.setOnAction(newEventHandler(){@Ov

java - 使用 Intellij IDEA 构建项目时 Maven Surefire 插件 "error in starting fork"

我尝试使用IntellijIDEA使用Maven构建Java插件,直到遇到错误:[INFO]------------------------------------------------------------------------[INFO]BUILDFAILURE[INFO]------------------------------------------------------------------------[INFO]Totaltime:5.803s[INFO]Finishedat:2015-06-16T16:34:55-10:00[INFO]FinalMemory: