在这篇文章中,我们将为您详细介绍如何在Java或Linux上的JRuby中找到我的PID?的内容,并且讨论关于linux获取java的pid的相关问题。此外,我们还会涉及一些关于java–RubyMi
在这篇文章中,我们将为您详细介绍如何在Java或Linux上的JRuby中找到我的PID?的内容,并且讨论关于linux获取java的pid的相关问题。此外,我们还会涉及一些关于java – RubyMine在linux上、java – 在jruby中使用fxml、java – 在嵌入式JRuby中执行Ruby脚本时,可以使用gem吗?、java – 如何在jruby9.1.2.0中使用gpg加密加密文件?的知识,以帮助您更全面地了解这个主题。
本文目录一览:- 如何在Java或Linux上的JRuby中找到我的PID?(linux获取java的pid)
- java – RubyMine在linux上
- java – 在jruby中使用fxml
- java – 在嵌入式JRuby中执行Ruby脚本时,可以使用gem吗?
- java – 如何在jruby9.1.2.0中使用gpg加密加密文件?
如何在Java或Linux上的JRuby中找到我的PID?(linux获取java的pid)
我需要找到Linux平台上当前正在运行的进程的PID(它可以是与系统有关的解决方案)。Java不支持获取进程ID,并且JRuby当前在Ruby方法Process.pid中存在一个错误。
还有另一种获取PID的方法吗?
答案1
小编典典如果安装了procfs,则可以通过/ proc /
self符号链接找到进程ID,该链接指向一个名为pid的目录(这里还有文件以及其他相关信息,包括PID,但该目录为在这种情况下,您需要)。
因此,使用Java,您可以执行以下操作:
String pid = new File("/proc/self").getCanonicalFile().getName();
在JRuby中,您可以使用相同的解决方案:
pid = java.io.File.new("/proc/self").canonical_file.name
java – RubyMine在linux上
kvet@Kvet-Notebook:~/Rubymine-4.0.3/bin$java -version java version "1.7.0_03" OpenJDK Runtime Environment (IcedTea7 2.1.1pre) (7~u3-2.1.1~pre1-1ubuntu2) OpenJDK 64-Bit Server VM (build 22.0-b10,mixed mode) kvet@Kvet-Notebook:~/Rubymine-4.0.3/bin$./rubymine.sh OpenJDK Runtime Environment (IcedTea7 2.1.1pre) (7~u3-2.1.1~pre1-1ubuntu2) OpenJDK 64-Bit Server VM (build 22.0-b10,mixed mode) OpenJDK 64-Bit Server VM (build 22.0-b10,mixed mode) WARNING: You are launching the IDE using OpenJDK Java runtime. THIS IS STRICTLY UNSUPPORTED DUE TO KNowN PERFORMANCE AND GRAPHICS PROBLEMS! NOTE: If you have both Oracle (Sun) JDK and OpenJDK installed please validate either RUBYmine_JDK,JDK_HOME,or JAVA_HOME environment variable points to valid Oracle (Sun) JDK installation. See http://ow.ly/6TuKQ for more info on switching default JDK. Press Enter to continue. Error: Could not find or load main class com.intellij.idea.Main
我试图安装openjdk6和同样的错误.我不知道我该怎么做
解决方法
Answer: Install java and check your path:
下载oracle7 jdk在:
http://www.oracle.com/technetwork/java/javase/downloads/java-se-jdk-7-download-432154.html
按照以下说明:
http://www.webupd8.org/2011/09/how-to-install-oracle-java-7-jdk-in.html例如
下载java(上)后:将下载的Oracle Java JDK归档解压缩到主文件夹,并将新创建的文件夹重命名为“java-7-oracle”.
sudo mv its_name java-7-oracle
安装它:
cd sudo mkdir -p /usr/lib/jvm/ #just in case sudo mv java-7-oracle/ /usr/lib/jvm/ sudo add-apt-repository ppa:nilarimogard/webupd8 sudo apt-get update sudo apt-get install update-java sudo update-java
核实:
java -version javac -version
java – 在jruby中使用fxml
我已经看过如何用Java编写原始JavaFX代码,如何用Java编写FXML代码,如何编写raw JavaFX code in JRuby,但似乎无法找到使用FXML与JRuby的任何内容.目前可以在JRuby中使用FXML吗?如果是这样,有没有很好的教程?
更新:JRubyFX 0.9.1 and later have FXML support
解决方法:
可以将fxml与jruby一起使用.
我找不到任何教程,所以我编写了我的第一个Ruby程序.程序demonstrates using fxml with jruby.这是我写给demonstrate using fxml with java的早期演示的转换.
该程序的ruby版本的输出:
java – 在嵌入式JRuby中执行Ruby脚本时,可以使用gem吗?
我在Java方面比在Ruby方面有更多的经验,时间非常重要(优雅不是),所以我想我可能会更快,如果我在JUnit类中执行该脚本并模拟它所依赖的所有子系统(Web服务器),数据库).这样我就可以使用我的Java技能来测试Ruby系统.它就像你可以在一个Java程序中嵌入Ruby一样.
问题:我可以在嵌入式Ruby中使用gem,i.即创建一个可以在任何机器(Windows,Linux,Mac)上执行测试的Java程序,并且不需要我手动在其上安装几个宝石?如果有,怎么样?
注意:它们需要是真正的宝石,嘲笑都很好.
更新1(25.01.2017 13:14):一个明显的解决方案是将该脚本的逻辑提取到一个没有依赖项的单独的Ruby文件中.这可能是代码的80%.然后,即使没有宝石,我也可以测试该逻辑文件.
解决方法
java – 如何在jruby9.1.2.0中使用gpg加密加密文件?
Vivek在this年的回答接近我的解决方案,但解决方案只有解决方案.我目前正在关注this article,并试图将jruby中的java代码接口无效.我认为encryptFile函数是我需要的,如下所示:
public static void encryptFile( OutputStream out,String fileName,PGPPublicKey encKey,boolean armor,boolean withIntegrityCheck) throws IOException,NoSuchProviderException,PGPException { Security.addProvider(new BouncyCastleProvider()); if (armor) { out = new ArmoredOutputStream(out); } ByteArrayOutputStream bOut = new ByteArrayOutputStream(); PGPCompressedDataGenerator comData = new PGPCompressedDataGenerator(PGPCompressedData.ZIP); PGPUtil.writeFiletoLiteralData( comData.open(bOut),PGPLiteralData.BINARY,new File(fileName) ); comData.close(); BcPGPDataEncryptorBuilder dataEncryptor = new BcPGPDataEncryptorBuilder(PGPEncryptedData.TRIPLE_DES); dataEncryptor.setWithIntegrityPacket(withIntegrityCheck); dataEncryptor.setSecureRandom(new SecureRandom()); PGPEncryptedDataGenerator encryptedDataGenerator = new PGPEncryptedDataGenerator(dataEncryptor); encryptedDataGenerator.addMethod(new BcpublicKeyKeyEncryptionMethodGenerator(encKey)); byte[] bytes = bOut.toByteArray(); OutputStream cOut = encryptedDataGenerator.open(out,bytes.length); cOut.write(bytes); cOut.close(); out.close(); } )
我得到以下错误:
NoMethodError: undefined method `ZIP' for Java::OrgBouncycastleOpenpgp::PGPCompressedData:Class
在
PGPCompressedDataGenerator comData = new PGPCompressedDataGenerator(PGPCompressedData.ZIP);
如果您可以通过代码或使用加密文件在jruby作为一个整体使用gpg来帮助我,这将是一个很大的帮助.
更新1
ZIP值表示为整数值的常量,并列在this页.
更新2
我做到了功能:
PGPEncryptedDataGenerator encryptedDataGenerator = new PGPEncryptedDataGenerator(dataEncryptor); encryptedDataGenerator.addMethod(new BcpublicKeyKeyEncryptionMethodGenerator(encKey)); // encKey is class PGPPublicKey's instance
我有从OS生成的公钥.我如何从公钥字符串创建一个PGPPublic Key实例encKey?
解决方法
加密:
在机器上安装了公钥
encryptObj = Gpgr::Encrypt::GpgFileForEncryption.new encryptObj.email_address = <email_of_gpg_owner> encryptObj.file = <path_to_file_to_encrypt> encryptObj.file_output = <path_to_output_file> encryptObj.encrypt
解密
在带有私钥的机器中
decryptObj = Gpgr::Decrypt::GpgFileForDecryption.new decryptObj.file = <path_to_file_to_decrypt> decryptObj.file_output = <path_to_output_file> decryptObj.decrypt
关于如何在Java或Linux上的JRuby中找到我的PID?和linux获取java的pid的介绍现已完结,谢谢您的耐心阅读,如果想了解更多关于java – RubyMine在linux上、java – 在jruby中使用fxml、java – 在嵌入式JRuby中执行Ruby脚本时,可以使用gem吗?、java – 如何在jruby9.1.2.0中使用gpg加密加密文件?的相关知识,请在本站寻找。
本文标签: