标签: java

与进程相关的堆栈是什么意思?

Unix 环境中的高级编程一书中我阅读了以下关于类 Unix 系统中的线程的行

一个进程内的所有线程共享相同的地址空间、文件描述符、堆栈和进程相关属性。由于它们可以访问相同的内存,因此线程之间需要同步访问共享数据以避免不一致。

作者stacks在这里是什么意思?我做 Java 编程并且知道每个线程都有自己的堆栈。所以我对这里的共享 stacks概念感到困惑。

process java process-management multithreading

4
推荐指数
1
解决办法
1612
查看次数

在 Debian 上安装 JRE 的最简单方法是什么?

在我的 Debian 操作系统 (Linux) 上安装 JRE 的最简单方法是什么?

linux debian java

4
推荐指数
1
解决办法
1万
查看次数

相当于 Unix Shell (Cygwin) 中的 Java String.getBytes()

假设我将字符串转换为字节数组。

\n\n
byte[] byte sUserID.getBytes(\xe2\x80\x9cUTF-8\xe2\x80\x9d);  //Convert User ID String to byte array    \n
Run Code Online (Sandbox Code Playgroud)\n\n

现在我需要在 Shell 上编写一个脚本,该脚本与我的 Java 代码具有完全相同的功能。在某个阶段,我必须对我的字节数组进行哈希处理(MessageDigest.getInstance(\xe2\x80\x9cSHA-256\xe2\x80\x9d)在 Java 和openssl dgst -sha256 \xe2\x80\x93binaryShell 中使用),但是因为 Java 代码中的摘要是从字节数组生成的,所以它们不会与我在 Shell 中得到的\xe2\x80\x99t 匹配结果(在 Shell 中我只是哈希目前是字符串,因此输入格式不匹配)。

\n\n

因为我openssl在shell中的输入应该类似于Java输入我想知道是否有办法getBytes()在Shell中\xe2\x80\x9csimulate\xe2\x80\x9d方法?我在 Shell 方面没有太多经验,所以我不知道在这种情况下最好的方法是什么。有任何想法吗?干杯!

\n

shell java openssl binary

4
推荐指数
1
解决办法
8009
查看次数

从 CentOS 7 调用 javac

我希望能够javac在 CentOS 7 终端上使用该命令。如何设置 PATH 变量以实现此目的?

下面解释了我当前环境的相关方面。当我输入cd /usr/lib/jvm然后时ls -al,输出是:

total 8
drwxr-xr-x.  3 root root 4096 Dec 17 22:01 .
dr-xr-xr-x. 36 root root 4096 Dec 17 22:00 ..
drwxr-xr-x.  4 root root   95 Dec 17 22:01 java-1.7.0-openjdk-1.7.0.71-2.5.3.1.el7_0.x86_64
lrwxrwxrwx.  1 root root   21 Dec 17 22:01 jre -> /etc/alternatives/jre
lrwxrwxrwx.  1 root root   27 Dec 17 22:01 jre-1.7.0 -> /etc/alternatives/jre_1.7.0
lrwxrwxrwx.  1 root root   35 Dec 17 22:01 jre-1.7.0-openjdk -> /etc/alternatives/jre_1.7.0_openjdk
lrwxrwxrwx.  1 root …
Run Code Online (Sandbox Code Playgroud)

terminal centos java

4
推荐指数
1
解决办法
1万
查看次数

使用 xargs 在命令中间传递多个参数

有没有办法使用 xargs 在命令中间传递多个参数?

例如,我有一个文件javaoptions.txt,其中包含一组默认的 Java 选项。我希望能够做类似的事情

xargs -I % java % ClassName < javaoptions.txt

并将所有选项传递给一个命令。然而,如果我尝试这样做,它会使用多个命令,每次传递一个选项。

无论如何,我无法修改正在执行的源代码

java xargs

4
推荐指数
1
解决办法
1568
查看次数

我可以指出 .deb 包依赖于 Java,但不指定什么实现(例如 OpenJDK、IcedTea、Oracle)?

我有一个 .deb 包,其中包含一个需要 Java 才能运行的应用程序。但是,我不在乎他们安装了哪个实现(例如 OpenJDK、IcedTea、Oracle),而且我不想强迫用户在安装了另一个实现时下载另一个实现。我还想处理用户没有安装任何实现的情况。

有没有办法表明 .deb 包需要任何 Java 实现?如果是这样,如果没有安装任何实现,我该如何处理它们?

java deb

4
推荐指数
1
解决办法
1228
查看次数

Fedora24,尝试安装java(JDK)

我已经安装了 openjdk

Installed Packages 
java-1.8.0-openjdk.x86_64          1:1.8.0.101-1.b14.fc24   @updates
java-1.8.0-openjdk-headless.x86_64 1:1.8.0.101-1.b14.fc24   @updates     
javapackages-tools.noarch          4.6.0-14.fc24            @koji-override-0
Run Code Online (Sandbox Code Playgroud)

但还是。找不到javac (只有java程序)。那么jdk安装在哪里呢?

fedora java jdk

4
推荐指数
1
解决办法
1849
查看次数

在 OpenSUSE 上安装 Java 8 JDK - 更新替代方案

我在许多 OpenSUSE 论坛上搜索了这个问题的答案,但到目前为止我还没有找到。长话短说,从 Oracle 为 JDK 安装 RPM 时,我收到以下信息:

> sudo zypper install jdk-8u111-linux-x64.rpm
[sudo] password for root:
Loading repository data...
Reading installed packages...
Resolving package dependencies...

The following NEW package is going to be installed:
  jdk1.8.0_111

1 new package to install.
Overall download size: 158.3 MiB. Already cached: 0 B. After the operation, additional 258.5 MiB will be used.
Continue? [y/n/? shows all options] (y): y
Retrieving package jdk1.8.0_111-2000:1.8.0_111-fcs.x86_64           (1/1), 158.3 MiB (258.5 MiB unpacked)
Checking for file conflicts: …
Run Code Online (Sandbox Code Playgroud)

opensuse java software-installation zypper jdk

4
推荐指数
1
解决办法
1万
查看次数

如何在 NixOS 中安装 Java?

在 上NixOS,我正在尝试安装 java以便从命令行编译我的代码。

我没有看到在可用包列表中的任何地方列出了 java 编译器,通过运行nix-env -qaP '*' --description.

我如何在上面安装 Java 编译器NixOS

java nixos

4
推荐指数
1
解决办法
3007
查看次数

无法粘贴到两台机器上复制的Jshell版本11.0.11

我的两台笔记本电脑遇到一个相当奇怪的问题,一台运行 Manjaro Linux(Arch for Children),另一台运行 Ubuntu 20.10。当我使用Jshell的Java 11的 read-eval-print 循环工具时,我无法粘贴到 Jshell 中,不能使用鼠标,也不能使用ctrl+p我制作了一个小视频来演示该问题。

它只发生在Jshell中,正常的bash不受影响。(echo第一个视频开头的命令运行良好)

https://www.mediafire.com/file/xjy9i8np16zfuit/Peek+2021-06-15+18-03.mp4/file(小于 1 MB 大)

我做了另一个记录,显示在 ether xfce4 终端或 st 终端中将一串字符粘贴到 jshell 中后它会冻结,直到在看似冻结的 jshell 中键入 17 个字符,此时出现粘贴的文本以及冻结后键入的字符。(如果我使用字母而不是视频中的数字,则输出如下所示:

jshell> System.out.println("This is a Test...")abcdefghijklmnopqrs
in both st and xfce4 terminal 
Run Code Online (Sandbox Code Playgroud)

https://www.mediafire.com/file/m2asx0y5tatnj89/Peek+2021-06-15+18-36.mp4/file (1.3 MB)

两台机器上使用的Java版本是:

openjdk 11.0.11 2021-04-20
OpenJDK Runtime Environment (build 11.0.11+9)
OpenJDK 64-Bit Server VM (build 11.0.11+9, mixed mode)
Run Code Online (Sandbox Code Playgroud)

如果这应该是 Java 板的一个问题,您能给我指出一个吗?

terminal java clipboard

4
推荐指数
1
解决办法
1017
查看次数