亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Unix 和 C++ 但不知道 RPM 或 Java

Unix 和 C++ 但不知道 RPM 或 Java

慕婉清6462132 2021-12-01 16:10:14
我是 Unix 和 C++ 的老手,但不是 RPM 或 Java。我必須寫一個Java程序。如果我運行了一個 Hello World,我可以使用互聯網來找到我的方式,但是我如何才能運行一個 Java Hello World?我確實在一臺機器上有 root,但對機器的出處知之甚少。使用 SuSE 11.4,如 cat 所見/etc/*-release。
查看完整描述

1 回答

?
HUH函數

TA貢獻1836條經驗 獲得超4個贊

目前,您似乎需要 Java 1.8。您需要開發工具包“JDK”而不是運行時環境“JRE”。


如果你有它,你會看到這里顯示的jdk1.8blahblah。你會認為他們會把 Java 放在包名中,是的,他們曾經這樣做過。但沒有更多,所以grep'ing forjava只會找到舊版本。


rpm -qa |grep jdk

jdk1.8-1.8.0_191-fcs.x86_64

java-1_6_0-openjdk-plugin-1.6.0.0_b20.1.9.7-1.2.1.x86_64

java-1_6_0-openjdk-1.6.0.0_b20.1.9.7-1.2.1.x86_64

如果沒有,java.com 不是答案——他們似乎只有 JRE。他們的搜索工具不會在帶有“JDK”或“下載 JDK 8”的前十名結果中返回您需要的鏈接。但谷歌在第一次點擊時找到了它,目前:https : //www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html


為 64 位獲取 x64 版本,為 32 位獲取 x86 版本。


Firefox 有一個內置的 RPM 安裝程序。如果您讓它安裝,您將看到一個名為“下載”的對話框(僅供參考;關閉);安裝摘要(點擊完成)。系統會提示您輸入 root 密碼,這讓我感到不舒服?;蛘?,您可以將 RPM 文件保存在任何地方,然后以 root 身份運行(替換您的文件名)


rpm -ivh wherever/jre-8u191-linux-x64.rpm

當它運行時,它將輸出(除其他外)包名稱。對于進一步的 rpm 命令,您使用這個包名,而不是文件名。(如果您嘗試rpm -q filename, 或rpm -e filename,它會告訴您文件名未安裝,如果rpm -ivh似乎只是告訴您它已安裝,這會令人困惑?。?/p>


現在它在哪里安裝了您需要的工具?


> rpm -ql jdk1.8-1.8.0_191-fcs.x86_64 | grep 'bin/java$'

/usr/java/jdk1.8.0_191-amd64/bin/java

/usr/java/jdk1.8.0_191-amd64/jre/bin/java

如果您在那里看到它們,您可以刪除 RPM 文件。


好的,它在 /usr/java/jdk1.8.0_191-amd64 中。將 /usr/java/jdk1.8.0_191-amd64/bin 添加到 .cshrc 中的 PATH 或您有什么并重新獲取它。


> java -version

java version "1.8.0_191"

Java(TM) SE Runtime Environment (build 1.8.0_191-b12)

Java HotSpot(TM) 64-Bit Server VM (build 25.191-b12, mixed mode)

> javac -version

javac 1.8.0_191

太好了,我們看到了 1.8!


Java 將源代碼保存在 .java 文件中,每個類一個文件。這些由編譯器讀取,編譯器在 .class 文件中輸出字節碼。然后就可以運行了。


把它放在一個名為的文件中HelloWorld.java:


public class HelloWorld {

    public static void main(String[] args) {

        System.out.println("Hello, World");

    }

}

在該目錄中,鍵入以下內容。他們應該在沒有進一步輸出的情況下成功。


> javac HelloWorld.java

> java HelloWorld

然后您應該會看到Hello, World輸出。


以上可能需要一個-cp .或-cp ./選項。

至于引導學習曲線:

  • 行到行的語法大多類似于 C++。

  • 不需要明確的“包含”語法;您可以通過名稱引用同一目錄中的公共類。

  • 公共類必須具有其文件的名稱,但文件可能包含其他私有類。

  • 它足夠準確,因為您開始認為所有看起來像 C++ 對象(事物)的東西實際上都是作為指向引用計數對象的指針實現的。這 ”。” 就像 C++“->”。

  • 沒有通過引用傳遞原子變量;總是按值(int boolean double 等)

  • 字符串是值和引用之間的中間地帶

  • 對象通過引用傳遞,認為對它們的“引用”是通過值傳遞的。 Method( Thing thing )在 Java 中就像Method( Thing* pthing )在 C++ 中調用一樣。 Method()thing/pthing本身的更改不會影響調用者,但thing.field/pthing->field更改是全局的。

  • 對于更具體的問題,谷歌應該能找到你需要的一切。


查看完整回答
反對 回復 2021-12-01
  • 1 回答
  • 0 關注
  • 172 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號