Tag: operating system

如何在Java应用程序中使用系统的上下文菜单?

我想显示文件搜索的结果。 我想为文件选择启用上下文菜单,这将是系统的上下文菜单。 例如,如果用户右键单击Windows中的文件 – 我想显示带有选项的弹出菜单: 打开 打开用… 编辑 发送至… 复制 切 等等… 并且,如果可能 – 将根据操作系统自动生成此菜单。 如果这不可能或太复杂 – 我想至少启用“磁盘上的定位”选项,该选项将在文件的文件夹中打开Windows资源管理器(或其他系统中的等效项),然后选择该文件。 该应用程序使用SWT以Java(JDK 7)编写。

java中操作系统的名称(不是“os.name”)

我想知道如何掌握jvm运行的那种操作系统。 它也必须是“安全的”,因此System.getProperty(“os.name”)实际上不是一个选项,因为它可以通过-D指令轻易绕过。 通过“安全”,我的意思是不容置疑。 它适用于桌面应用程序。 用户总是可以对代码进行反混淆,反编译,编辑和重新编译,但这比将-D传递给jvm要困难得多。 我们想要修补不平凡,而不是不可能(因为那是不可能做到的)。

使用Python的jar运行Java程序

我试图用Python的jar运行一个java文件。 我首先运行命令: java -classpath “.:/Users/blablalba/jackson-all-1.9.0.jar” parseJason 它工作得很好。 然后我写了一个小的python脚本来执行java文件。 (更新:我根据以下建议做了更改。 import os.path,subprocess from subprocess import STDOUT,PIPE def compile_java(java_file): subprocess.check_call([‘javac’, java_file]) def execute_java(java_file, stdin): java_class,ext = os.path.splitext(java_file) // cmd = [‘java’, java_class] change to cmd = [‘java’, ‘-classpath’, ‘.:/Users/blablalba/jackson-all-1.9.0.jar’, ‘parseJason’] proc = subprocess.Popen(cmd, stdin=PIPE, stdout=PIPE, stderr=STDOUT) stdout,stderr = proc.communicate(stdin) compile_java(‘parseJason.java’) execute_java(‘parseJason.java’, ‘data.json’,’output_010.csv’) Data.json是输入文件名,output_010.csv是输出文件名。 我的java文件通过读取scanner.system.in来获取这两个参数。 然后我运行命令: python parseJson.py […]

如何使JUnit测试用例按顺序运行?

我正在使用JUnit4。 我在测试用例中有一组测试方法。 每个测试方法都插入一些记录并validation测试结果,最后删除插入的记录。 由于JUnit并行运行,因为在执行上一个测试方法期间存在一些记录,测试方法会失败。 这只发生在我的同事机器(Windows 7)中,而不是在我的机器(Cent OS 6)中。 我们需要的是测试方法必须通过我们所有的机器。 我已经尝试清除Setup()方法中的记录,但它再次只能在我的机器上运行。 JUnit中是否有任何选项可以使测试方法以统一的顺序运行? 谢谢,

如何从Java中的OS读取“列表分隔符”?

我正在编写一个Java导出器,它应该尊重用户的自定义设置,尤其是用作分隔符的“列表分隔符”。 在Windows中,可以设置此List分隔符 Control Panel -> Regional and Language Options -> Regional Options -> Customize 我不知道其他操作系统,但我很确定你也可以在其他操作系统上改变它。 将此自定义设置从操作系统转换为Java的最佳方法是什么? 我在Eclipse RCP环境中,所以如果有可用的话,我可能会使用与RCP相关的解决方案。