欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java在cmd運(yùn)行"-d"和"-cp"參數(shù)解讀

 更新時(shí)間:2023年08月04日 09:08:52   作者:百學(xué)成癮  
這篇文章主要介紹了java在cmd運(yùn)行"-d"和"-cp"參數(shù)用法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

1. “-d"和”-cp"參數(shù)的用法

“-d” 參數(shù)

javac 有一個(gè)’-d’參數(shù),后跟一個(gè)目錄路徑,其指定編譯的字節(jié)碼(xx.class)文件放到什么目錄下,特別當(dāng)類定義在一個(gè)包中時(shí),javac會(huì)在參數(shù)指定目錄下產(chǎn)生包名子目錄并將類字節(jié)碼文件放入其中。

“-cp” 參數(shù)

javac 還有一個(gè)’-cp’參數(shù),后跟一個(gè)或多個(gè) 帶有分隔的 目錄路徑或庫(kù)文件(.jar 或 .zip),其 指定import代碼指令表達(dá)的字節(jié)碼文件放在什么地方 (可以理解為’-cp’用來尋找import導(dǎo)入的或者本 身編譯成功后的字節(jié)碼文件),此參數(shù)可以在classpath環(huán)境變量中設(shè)置。

java 也有一個(gè)’-cp’參數(shù),意義同javac

2. 一個(gè)java程序的編譯

首先我在E盤下的my_test文件夾下建了兩個(gè)Java程序,class為空文件夾

qq

Person的編譯

Person.java代碼如下:

//命名為   Person.java
package lib; //package說明此類(Person)在說明lib包下
public class Person{
	public static int m=10;
	 public static void main(String[] args){
	 	System.out.println("hello,this is Person");
	 }
}

一、編譯字節(jié)文件到當(dāng)前目錄

1.編譯Person.java,生成java.class到當(dāng)前目錄下, 運(yùn)行 javac -d . Person.java (注意 '-d’后面有個(gè) ‘空格’ 然后才有 ‘.’)

自動(dòng)生成lib文件夾,并且將編譯的Person.class放在lib下

編譯Person.java

2.因?yàn)镻erson.class在當(dāng)前目錄下的lib文件夾中

所以運(yùn)行java lib.Person 執(zhí)行Person.class

輸出結(jié)果 hello,this is Person

在這里插入圖片描述

二、編譯字節(jié)文件到當(dāng)前目錄的子文件夾

1.編譯Person.java,生成java.class到class文件夾下

運(yùn)行 javac -d ./class Person.java 在class文件夾下自動(dòng)產(chǎn)生lib文件夾,并生成Person.class文件

在這里插入圖片描述

2.運(yùn)行 java -cp ./class lib.Person 輸出結(jié)果

注:生成的字節(jié)碼文件Person.class在文件夾class下面,所以要用 “-cp” 來找到 Person.class 注意有空格,不能忽略

在這里插入圖片描述

3. 兩個(gè)java程序間的調(diào)用編譯

My.java 中需要調(diào)用Person的成員,為了更好的理解參數(shù)意義,我們把My.java 和 Person.java 都放在class文件夾下運(yùn)行

My.java 代碼如下:(調(diào)用Person中的成員)

//命名為 My.java
package longpf; //說明此類(My)在longpf包下
import lib.Person;
public class My{ 
	public static void main(String[] args){
		System.out.println(new Person().m)//調(diào)用輸出Person中的成員m
	}
}

注:My在包longpf下,Person在包lib下,見代碼第一行package:

編譯運(yùn)行My.java

在這里插入圖片描述

過程如下:

1.執(zhí)行 javac -d ./class Person.java ,在class文件中產(chǎn)生lib包

2.執(zhí)行javac -cp ./class -d ./class My.java ,因?yàn)镸y.java中有import Person ,所以要找到Person.class,即 -cp參數(shù),-cp ./class 到class文件夾下 .

代表當(dāng)前目錄,-d ./class 表示編譯生成的My.class放在當(dāng)前目錄的class文件夾下(代碼中package longpf; 自動(dòng)生成longpf包),注意不能丟掉空格

在這里插入圖片描述

3.執(zhí)行java -cp ./class longpf.My,最后找到class下的longpf包,里面的My.class運(yùn)行。

輸出結(jié)果 Perosn中的m成員 10;

一定要在包longpf外用 ’ . '調(diào)用My,否則的話會(huì)顯示錯(cuò)誤,如圖:

在這里插入圖片描述

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • MyBatis最常用的增刪改查操作詳解

    MyBatis最常用的增刪改查操作詳解

    這篇文章主要介紹了MyBatis中常見的增、刪、改、查(CRUD)操作,通過創(chuàng)建數(shù)據(jù)庫(kù)表、實(shí)體類、Mapper接口及映射文件,我們實(shí)現(xiàn)了對(duì)user表的增刪改查操作,MyBatis簡(jiǎn)化了數(shù)據(jù)庫(kù)操作,需要的朋友可以參考下
    2024-12-12
  • Springboot @Import 詳解

    Springboot @Import 詳解

    這篇文章主要介紹了Springboot @Import 詳解,仔細(xì)看了下Springboot關(guān)于@Import的處理過程,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-11-11
  • Java中的LinkedHashMap及LRU緩存機(jī)制詳解

    Java中的LinkedHashMap及LRU緩存機(jī)制詳解

    這篇文章主要介紹了Java中的LinkedHashMap及LRU緩存機(jī)制詳解,LinkedHashMap繼承自HashMap,它的多種操作都是建立在HashMap操作的基礎(chǔ)上的,同HashMap不同的是,LinkedHashMap維護(hù)了一個(gè)Entry的雙向鏈表,保證了插入的Entry中的順序,需要的朋友可以參考下
    2023-09-09
  • Java 兩種延時(shí)thread和timer詳解及實(shí)例代碼

    Java 兩種延時(shí)thread和timer詳解及實(shí)例代碼

    這篇文章主要介紹了Java 兩種延時(shí)thread和timer詳解及實(shí)例代碼的相關(guān)資料,需要的朋友可以參考下
    2017-02-02
  • struts2實(shí)現(xiàn)簡(jiǎn)單文件下載功能

    struts2實(shí)現(xiàn)簡(jiǎn)單文件下載功能

    這篇文章主要為大家詳細(xì)介紹了struts2實(shí)現(xiàn)簡(jiǎn)單文件下載功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • Spring在多線程環(huán)境下如何確保事務(wù)一致性問題詳解

    Spring在多線程環(huán)境下如何確保事務(wù)一致性問題詳解

    這篇文章主要介紹了Spring在多線程環(huán)境下如何確保事務(wù)一致性問題詳解,說到異步執(zhí)行,很多小伙伴首先想到Spring中提供的@Async注解,但是Spring提供的異步執(zhí)行任務(wù)能力并不足以解決我們當(dāng)前的需求,需要的朋友可以參考下
    2023-11-11
  • Java 8 中的 10 個(gè)特性總結(jié)及詳解

    Java 8 中的 10 個(gè)特性總結(jié)及詳解

    本主要介紹Java 8中的新特性,這里整理了相關(guān)資料并整理了10個(gè)特性,逐一介紹說明,有興趣的朋友可以參考下
    2016-09-09
  • java顯示當(dāng)前運(yùn)行時(shí)的參數(shù)(java運(yùn)行參數(shù))

    java顯示當(dāng)前運(yùn)行時(shí)的參數(shù)(java運(yùn)行參數(shù))

    這篇文章主要介紹了java顯示當(dāng)前運(yùn)行時(shí)參數(shù)的示例(java運(yùn)行參數(shù)),需要的朋友可以參考下
    2014-04-04
  • 一文詳解如何配置MyBatis實(shí)現(xiàn)打印可執(zhí)行的SQL語句

    一文詳解如何配置MyBatis實(shí)現(xiàn)打印可執(zhí)行的SQL語句

    在MyBatis中,動(dòng)態(tài)SQL是一個(gè)強(qiáng)大的特性,允許我們?cè)赬ML映射文件或注解中編寫條件語句,根據(jù)運(yùn)行時(shí)的參數(shù)來決定SQL的具體執(zhí)行內(nèi)容,這篇文章主要給大家介紹了關(guān)于如何配置MyBatis實(shí)現(xiàn)打印可執(zhí)行的SQL語句的相關(guān)資料,需要的朋友可以參考下
    2024-08-08
  • Java二維數(shù)組計(jì)算集合總結(jié)

    Java二維數(shù)組計(jì)算集合總結(jié)

    本篇文章給大家整理了關(guān)于Java二維數(shù)組計(jì)算集合的內(nèi)容總結(jié),有需要的讀者們可以參考下。
    2018-02-02

最新評(píng)論