notepad++編譯並運行java (自訂包)

來源:互聯網
上載者:User

標籤:

  最近用Notepad++寫彙編,感覺用起來挺順手,於是想能不能也在這個優秀的編輯器下編寫java並編譯運行呢,因為每次啟動eclipse都要挺長時間,而且eclipse實在太占記憶體了。。。

  於是各種百度之後,看網上的教程,使用Notepad++的NppExec(Notepad++的一個外掛程式)實現了這一點。

  附網址:http://jingyan.baidu.com/article/a65957f4fedcc424e67f9bd1.html

      http://jingyan.baidu.com/article/7082dc1c712b77e40a89bd8d.html

教程裡基本都是用到了這兩個命令:

javac -encoding UTF-8 "$(FULL_CURRENT_PATH)"java -cp "$(CURRENT_DIRECTORY)" "$(NAME_PART)"

// Notepad++的環境變數

變數名稱

含義

FULL_CURRENT_PATH

檔案路徑名稱 

CURRENT_DIRECTORY  

檔案目錄 

FILE_NAME  

檔案全名稱

NAME_PART 

檔案名稱

EXT_PART 

副檔名 

 


 

然而,我寫的Java代碼裡大都使用了package語句,使用這兩個命令運行時就會出現“找不到或無法載入主類”的錯誤。

最後實在沒辦法,我就用C++寫了兩個程式。

   //myjavac.cpp

1 #include <iostream> 2 #include <windows.h> 3 #include <string> 4 #include <sstream> 5 #include <fstream> 6 using namespace std; 7 8 int main(int argc,char* args[]) 9 {10 11   string s1(args[1]),s2(args[2]);12   string j;13   j="javac -d "+s1+" "+s2; //javac -d directory_name file_full_path14   cout<<j<<endl;15 system(&j[0]);16 system("Pause");17 return 0;18 }

   //myjava.cpp

1 #include <iostream> 2 #include <windows.h> 3 #include <string> 4 #include <sstream> 5 #include <fstream> 6 using namespace std; 7 8 int main(int argc,char* args[]) 9 {10 string name(args[2]);11 cout<<"name:"<<name<<endl;12 fstream filestr(args[1],fstream::in|fstream::out);13 string s="",t="";14 filestr>>s;15 filestr>>t;16 int x=t.length();17 t[x-1]=‘\0‘;18 cout<<"package:"<<t<<endl;19 filestr.close();20 string j;21 stringstream ss1;22 ss1<<"java "<<t<<"."<<name; //java package_name.class_name23 j=ss1.str();24 cout<<j<<endl;25 system(&j[0]);26 system("Pause");27 return 0;28 }

 

把產生的兩個EXE檔案放在一個檔案夾(比如F:\\myshell)裡,然後再把這個檔案夾添加到系統的PATH環境變數裡,

然後開啟Notepad++,點擊運行菜單中的運行

輸入exe的檔案名稱,myjavac後面的兩個參數是"$(CURRENT_DIRECTORY)"   "$(FULL_CURRENT_PATH)"

        myjava後面的兩個參數是"$(FULL_CURRENT_PATH)"   "$(NAME_PART)"                     (參數之間用空格隔開)

然後點擊儲存,輸入名稱,選擇快速鍵(不選也可以),就可以把自己的命令添加到運行菜單了。

 

還可以通過修改C++代碼或是使用批處理把兩個命令合并為一個命令。

 

notepad++編譯並運行java (自訂包)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.