Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 国产在线高清一级毛片,精品成人免费视频,精品一区二区三区影片

          整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          01-IDE工具之IDEA的簡介、下載與安裝、初步配

          01-IDE工具之IDEA的簡介、下載與安裝、初步配置

          DEA簡介

          IDEA全稱是IntelliJ,是JetBrains公司推出一個集成開發工具,是Java開發工具中的翹楚,基于這個開發工具可以快速開發我們的Java相關項目。相對于其它開發工具,IDEA提供了更加強大的提示功能,全面的快捷鍵操作,模板代碼以及快速的資源整合。

          下載與安裝

          準備工作

          • 硬件(Hardware)要求1)內存8G或以上
            2)硬盤磁盤空閑空間大于5GB,最好有一塊固態硬盤。
          • 軟件(Software)要求1)Microsoft Windows 8 or later
            2)macOS 10.13 or later
            3)Any Linux distribution
            4)Set Up and Config JDK1.8

          IDEA工具下載

          IDEA官網下載地址如下:

          https://www.jetbrains.com/idea/

          基于操作系統的不同,可以選擇不同平臺下的IDEA,例如:

          說明:至于社區版(功能受限的免費版)/還是商業版(可試用)自行決定。

          IDEA工具安裝

          IDEA 下載以后需要進行安裝進行使用。假如只是下載的解壓版本,則可以將其拷貝到非中文目錄,然后直接解壓進行應用。假如下載的可執行程序(例如windows平臺下的.exe文件)則直接啟動可執行程序,然后按照提示,一步一步安裝即可。

          IDEA官方幫助文檔文檔參考如下:

          https://www.jetbrains.com/help/idea/discover-intellij-idea.html

          IDEA工具啟動

          找到解壓或安裝好的idea根目錄,然后進入bin目錄找到idea.bat或者idea64.exe文件,然后直接雙擊進行啟動,第一個啟動歡迎界面如圖所示:

          在第一個界面呈現過程中,其實是IDEA底層在進行啟動初始化,假如是第一次啟動,稍等片刻會進入第二個界面,例如:

          在第二個界面中,我們先選擇創建新項目(New Project),然后進入創建項目的界面,這里我們先選擇創建空項目,如圖所示:

          選擇好Empty Project以后,點擊next進入項目的設計,如圖所示:

          在上面圖中,點擊Finish按鈕完成項目的創建,進入IDEA的項目工作窗口,如圖所示:

          IDEA 基本配置

          Appearance(顯示)主題配置

          KeyMap(快捷鍵)配置

          Editor(編輯區)配置

          General 配置

          滾輪滑動,改變字體大小配置,如圖所示:

          包導入配置,如圖所示:

          行號與方法分隔符配置,如圖所示:

          代碼提示配置,如圖所示:

          代碼補全配置,如圖所示:

          Font 配置

          代碼編輯區字體配置,如圖所示:

          控制臺字體配置,如圖所示:

          Color 配置

          代碼中的注釋顏色配置,如圖所示:

          File 編碼配置

          Build 執行配置

          Compiler(編譯配置)

          自動編譯配置(可選),選上了可能會比較慢,如圖所示:

          Build Tools 中的Maven配置

          Maven 初始化配置(假如已有配置好的,可以使用已有的配置)

          找到你磁盤中的maven根目錄下的conf目錄,并打開conf目錄下的settings.xml文件,然后進行如下配置:

          配置maven本地庫(從maven遠程服務器下載的資源存儲到的位置)

          <localRepository>${user.home}/.m5/repository</localRepository>

          配置maven私服(配置到mirrors標簽內部)。

             <mirror>
              <id>aliyun</id>
              <name>aliyun for maven</name>
              <mirrorOf>*</mirrorOf>
              <url>https://maven.aliyun.com/repository/public</url>
             </mirror>

          配置maven中的profile(配置到profiles標簽內部),設置JDK編譯和運行版本。

          <profile>
             <id>jdk-1.8</id>
             <activation>
              <activeByDefault>true</activeByDefault>
                <jdk>1.8</jdk>
             </activation>
             <properties>
                 <maven.compiler.source>1.8</maven.compiler.source>
                 <maven.compiler.target>1.8</maven.compiler.target>
                 <maven.compiler.compilerVersion>1.8
                 </maven.compiler.compilerVersion>
             </properties>
           </profile>

          IDEA 中集成Maven配置

          找到Build Tools/Maven選項,然后在IDEA中集成本地maven配置。如圖所示:

          Version Control 配置

          安裝gitee插件

          Gitee 安裝成功以后,檢查是否在Version Control中有Gitee選項,如圖所示:

          點擊Version Control的Gitee選項,進入Gitee配置,如圖所示:

          在Gitee配置界面,選擇添加賬戶(Add Account),進入賬戶配置界面,如圖所示:

          在Gitee賬戶配置界面,進行連接Gitee平臺的賬戶配置(要事先注冊好Gitee平臺賬戶),然后點擊Log in進行登陸,登陸成功以后會呈現如下界面,如圖所示:

          總結(Summary)

          本小節主要是對IDEA開發工具進行了一個簡單介紹,然后基于我們后續要做的應用,做了一個初步配置,基于這個配置我們后續可以更好的展開項目的創建、測試等。

          在過去幾年中,JetBrains的IntelliJ很快成為Java開發人員的頂級IDE。使IntelliJ對Java開發人員如此有吸引力的一個特性是使用插件擴展和創建新功能的能力。在本教程中,我們將介紹如何編寫IntelliJ插件來演示擴展IDE的幾種方法。

          雖然本文主要關注IntelliJ插件,但所有JetBrains IDE都共享公共代碼。因此,這里使用的許多技術可以應用于JetBrain的其他IDE,如PyCharm、RubyMine等。

          插件功能

          Intellij插件按照功能可分四類:

          1. 自定義語言:針對不同語言,能夠編寫、解釋和編譯
          2. 框架:支持第三方框架,如Spring
          3. 工具:與外部工具(如Gradle)集成
          4. 用戶界面附加組件:新菜單項、工具窗口和按鈕等

          創建一個插件項目

          使用 Plugin DevKit(https://www.jetbrains.org/intellij/sdk/docs/basics/getting_started/using_dev_kit.html)來創建工程,DevKit提供了自定義SDK類型和一組用于在IDE中構建插件的操作

          • 創建工程

          在Intellij的菜單欄,選擇 File | New | Project,New Project 框里選擇 IntelliJ PLatform Plugin

          New Project

          在project SDK選項框選擇合適的Intellij SDK,然后下一步,填上project name,完成,就創建好一個Intellij plugin 工程了。

          • 實現一個自定義的Plugin

          創建自定義Action

          如果需要了解更多action 相關的東西,請訪問官方文檔 https://www.jetbrains.org/intellij/sdk/docs/basics/action_system.html

          創建自定義的action,需要繼承抽象類AnAction,并且需要重寫方法AnAction.update()AnAction.actionPerformed()

          • update()方法里面實現開啟和禁用事件邏輯
          • actionPerformed()方法里面實現我們需要做的具體業務邏輯
          package com.test.plugin;
          
          import com.intellij.ide.BrowserUtil;
          import com.intellij.lang.Language;
          import com.intellij.openapi.actionSystem.AnAction;
          import com.intellij.openapi.actionSystem.AnActionEvent;
          import com.intellij.openapi.actionSystem.CommonDataKeys;
          import com.intellij.openapi.editor.Editor;
          import com.intellij.openapi.project.Project;
          import com.intellij.psi.PsiFile;
          
          import java.io.UnsupportedEncodingException;
          import java.net.URLEncoder;
          
          public class SearchBaiduAction extends AnAction {
              /**
               * Only make this action visible when text is selected.
               * <p>
               * The update method below is only called periodically so need
               * to be careful to check for selected text
               * https://jetbrains.org/intellij/sdk/docs/basics/action_system.html#overriding-the-anactionupdate-method
               *
               * @param e
               */
              @Override
              public void update(AnActionEvent e) {
                  // Get required data keys
                  final Project project=e.getProject();
                  final Editor editor=e.getData(CommonDataKeys.EDITOR);
          
                  // Set visibility only in case of existing project and editor and if a selection exists
                  e.getPresentation().setEnabledAndVisible(project !=null
                          && editor !=null
                          && editor.getSelectionModel().hasSelection());
              }
          
              @Override
              public void actionPerformed(AnActionEvent e) {
                  final String selectedCode=getSelectedCode(e);
                  final String languageTag=getLanguageTag(e);
          
                  String url=getUrl(languageTag, selectedCode);
                  if (url !=null) {
                      BrowserUtil.browse(url);
                  }
              }
          
              private String getSelectedCode(AnActionEvent e) {
                  final Editor editor=e.getRequiredData(CommonDataKeys.EDITOR);
                  return editor.getSelectionModel().getSelectedText();
              }
          
                private String getLanguageTag(AnActionEvent e) {
                  String languageTag="";
                  PsiFile file=e.getData(CommonDataKeys.PSI_FILE);
                  if (file !=null) {
                      Language lang=file.getLanguage();
                      languageTag=lang !=null ? lang.getDisplayName().toLowerCase() : null;
                  }
                  return languageTag;
              }
          
              private String getUrl(String languageTag, String selectedCode) {
                  try {
                      StringBuilder sb=new StringBuilder("https://www.baidu.com/s?wd=");
                      if (languageTag !=null) {
                          sb.append(" " + URLEncoder.encode(languageTag, "UTF-8"));
                      }
                      sb.append(URLEncoder.encode(selectedCode, "UTF-8"));
                      return sb.toString();
                  } catch (UnsupportedEncodingException unsupportedEncodingException) {
                      unsupportedEncodingException.printStackTrace();
                      return null;
                  }
              }
          }

          如果action被禁用了,那么actionPerformed方法不會被執行

          actionPerformed()方法

           @Override
              public void actionPerformed(AnActionEvent e) {
                  final String selectedCode=getSelectedCode(e);
                  final String languageTag=getLanguageTag(e);
          
                  String url=getUrl(languageTag, selectedCode);
                  if (url !=null) {
                      BrowserUtil.browse(url);
                  }
              }

          在該方法中,我們通過getSelectedCode()方法拿到用戶選擇的文本,通過剛發getLanguageTag()獲取當前文本語言,比如java,js,go等。然后通過getURL()方法組裝url,最后通過BrowserUtil.browse(url) 打開瀏覽器,并訪問給的url。在我們demo里面,我們將用選擇的文本在baidu里面進行搜索。

          獲取Editor中選擇的文本

          你需要使用SelectionModel對象獲取選擇的文本

          private String getSelectedCode(AnActionEvent e) {
                  final Editor editor=e.getRequiredData(CommonDataKeys.EDITOR);
                  return editor.getSelectionModel().getSelectedText();
              }

          獲取當前文件的語言

          從event中通過CommonDataKeys.PSI_FILE key獲取到PsiFile對象,然后再從PsiFile中獲取到Language。

             private String getLanguageTag(AnActionEvent e) {
                  String languageTag="";
                  PsiFile file=e.getData(CommonDataKeys.PSI_FILE);
                  if (file !=null) {
                      Language lang=file.getLanguage();
                      languageTag=lang !=null ? lang.getDisplayName().toLowerCase() : null;
                  }
                  return languageTag;
              }
          • 注冊事件

          有兩種方式可以注冊我們自定義的事件:1. plugin.xml中配置,2.代碼中注冊

          在plugin.xml文件中注冊事件:

          <actions>
              <action
                      id="Codever.Search.Editor"
                      class="com.test.plugin.SearchBaiduAction"
                      text="Search on Baidu"
                      description="Search on Baidu"
              >
                <add-to-group group-id="EditorPopupMenu"/>
              </action>
              <action
                      id="Codever.Search.Console"
                      class="com.test.plugin.SearchBaiduAction"
                      text="Search on Baidu"
                      description="Search on Baidu">
                <add-to-group group-id="ConsoleEditorPopupMenu"/>
              </action>
            </actions>

          更多事件注冊信息請查看官方文檔 https://plugins.jetbrains.com/docs/intellij/basic-action-system.html?from=jetbrains.org#registering-actions-in-pluginxml

          • 運行插件

          在Idea中運行或者debug插件是非常簡單的一件事

          配置

          運行

          結果

          DEA 全稱 IntelliJ IDEA,是java編程語言開發的集成環境。IntelliJ在業界被公認為最好的java開發工具,尤其在智能代碼助手、代碼自動提示、重構、JavaEE支持、各類版本工具(git、svn等)、JUnit、CVS整合、代碼分析、 創新的GUI設計等方面的功能可以說是超常的。IDEA是JetBrains公司的產品,這家公司總部位于捷克共和國的首都布拉格,開發人員以嚴謹著稱的東歐程序員為主。它的旗艦版本還支持HTML,CSS,PHP,MySQL,Python等。免費版只支持Java,Kotlin等少數語言。

          俗話說:"工欲善其事必先利其器",今天準備和大家一起分享一下實際工作中能提升幸福感和工作效率的IDEA插件。

          廢話不多說,let's go !!!

          1Alibaba Java Coding Guidelines

          【阿里巴巴代碼規范檢查插件】

          在你需要檢查的代碼上面,點擊右鍵,選擇編碼規約掃描

          將會出現如下所示的檢查結果,并會給出編碼規范和提示:

          2GsonFormat

          【jsonToBean】

          在平時的開發中,將json轉為Bean

          3A8Translation

          【翻譯的插件】

          選中你要翻譯的漢語或英文,點擊鼠標右鍵,選擇Translate, (快捷鍵是Alt+T)就會實現翻譯,不用再去切換屏幕使用翻譯軟件翻譯了。

          4Maven Helper

          【分析依賴沖突的插件】

          此插件可用來方便顯示maven的依賴樹,和顯示沖突,在我們梳理依賴時幫助很大。

          5Free Mybatis plugin

          【增強idea對mybatis支持的插件】

          生成mapper xml文件 快速從代碼跳轉到mapper及從mapper返回代碼 mybatis自動補全及語法錯誤提示 集成mybatis generator gui界面 這個插件超級實用,可以從mapper接口跳轉到mybatis的xml文件中,還能找到對應地方

          6Grep Console

          【日志高亮顯示插件】

          可以Ctrl + Alt +S Other Settings進行配色(顏色參考請搜索:電腦最護眼的色彩、顯示屏亮度亦如此)

          7Lombok

          當我們創建一個實體時,通常對每個字段去生成GET/SET方法,但是萬一后面需要增加或者減少字段時,又要重新的去生成GET/SET方法,非常麻煩。可以通過該插件,無需再寫那么多冗余的get/set代碼。

          注意:需要在pom引入依賴

          <!--lombok用來簡化實體類:需要安裝lombok插件-->
          <dependency>
          <groupId>org.projectlombok</groupId>
          <artifactId>lombok</artifactId>
          </dependency>

          8Nyan progress bar

          基于Idea使用的漂亮進度條。把你的加載進度條全都變成彩虹和貓咪

          9FindBugs-IDEA

          【Bug檢查插件】

          在文件上或文件里面點擊鼠標右鍵,選擇FingBugs

          簡單的bug能給你快速找回來,什么NPE啥的,小兒科!推薦!!(嗓門大就說一遍)

          10Key Promoter X

          你還在為記不住快捷鍵煩惱嗎,Key Promoter X可以幫助你快速記住常用的快捷鍵。當你在idea中用鼠標點擊菜單,它可以顯示對應的快捷鍵以及點擊次數。使用一段時間后有助于過渡到更快、無鼠標的開發。

          11JavaDoc

          在項目中經常要求寫代碼注釋,否則不能通過代碼門禁,JavaDoc工具可以一鍵生成注釋。

          插件安裝成功后在菜單欄 code -> JavaDocs可以找到

          自動生成注釋效果如下:

          12ignore

          項目開發中通常會使用到git進行版本管理,在提交代碼時經常有人將本地的不必要的文件提交到代碼倉庫中,使用.ignore插件可以很好解決這個問題。插件安裝完成后會在項目中生成一個.ignore文件,編輯該文件忽略一些動態生成的文件,如class文件,maven的target目錄等。

          13RainbowBrackets

          彩虹括號,代碼中有多個括號會顯示不同的顏色。

          14Activate-power-mode

          在敲代碼時有抖動酷炫的特效,非常適合給前端小姐姐表演特技。(壞笑)

          15CodeGlance

          16GenerateAllSetter

          • 通過alt+enter對變量類生成對類的所有setter方法的調用
          • 當兩個對象具有相同的字段時生成一個轉換器
          • 當returnType為List Set Map時生成默認值
          • 在所有getter方法上生成對assertThat的調用

          17RestfulToolkit

          • 根據 URL 直接跳轉到對應的方法定義 ( 快捷鍵搜索 Ctrl + Alt + N 或者 Ctrl + \ ); —這個個人感覺非常好用,和Ctrl + F一樣重要。
          • 提供了一個 Services tree 的顯示窗口;
          • 一個簡單的 http 請求工具;
          • 在請求方法上添加了有用功能: 復制生成 URL;,復制方法參數…
          • 其他功能: java 類上添加 Convert to JSON 功能,格式化 json 數據 ( Windows: Ctrl + Enter; Mac: Command + Enter )。

          18JRebel

          熱門部署插件,讓你在修改完代碼后,不用再重新啟動,很實用!但是,不是免費的,需要大家發揮下聰明才智自行百度破解!

          19Json Parser

          厭倦了打開瀏覽器格式化和驗證JSON?為什么不安裝JSON解析器并在IDE中使用離線支持呢?JSON解析器是一個用于驗證和格式化JSON字符串的輕量級插件。

          20aiXcode & codota

          aiXcoder是一個強大的代碼完成器和代碼搜索引擎,基于最新的深度學習技術。它有可能向您推薦一整套代碼,這將幫助您更快地編寫代碼。aiXcoder還提供了一個代碼搜索引擎,以幫助您在GitHub上搜索API用例。

          類似功能的插件還有codota,codota基于數百萬個開源Java程序和您的上下文來完成代碼行,從而幫助您以更少的錯誤更快地進行編碼。新版本的codota提供以下功能:

          • 全線AI自動完成
          • 內聯和相關代碼示例
          • 根據用戶自己的編碼實踐進行編碼建議
          • 不用擔心你的代碼會被公開。codota不會將你的代碼發送到codota服務器,它只會從當前編輯的文件中發送最少的上下文信息,從而使codota能夠根據你當前的本地范圍進行預測。

          比如我想知道list.stream.map(…)方法的參考使用,只需要光標定位在map上,然后右鍵選擇菜單“Get relevant examples”或者使用快捷鍵“Ctrl + Shift + O”就可以快速搜索出來很多示例,非常方便。

          來源:blog.csdn.net/CSDN_SAVIOR/article/details/122505538


          主站蜘蛛池模板: 亚洲一区二区三区影院| 亚洲国产精品一区二区第一页 | 亚洲熟女www一区二区三区| 成人毛片一区二区| 亚洲狠狠久久综合一区77777| 一区二区三区免费电影| 国产福利微拍精品一区二区| 国产AV午夜精品一区二区入口| 精品伦精品一区二区三区视频| 午夜在线视频一区二区三区 | 理论亚洲区美一区二区三区| 久久综合亚洲色一区二区三区| 久久无码一区二区三区少妇| 四虎一区二区成人免费影院网址| 日本一区二区三区四区视频| 日本无卡码免费一区二区三区| 国产福利一区二区| 国产亚洲福利一区二区免费看| 国产一区二区三区无码免费| 午夜福利国产一区二区| 精品日韩在线视频一区二区三区| 国产韩国精品一区二区三区| 精品国产免费一区二区三区| 91福利国产在线观看一区二区| 国产午夜毛片一区二区三区 | 亚洲色精品VR一区区三区| 亚洲一区二区成人| 亚洲av日韩综合一区久热 | 人妻无码一区二区三区免费| 色妞色视频一区二区三区四区| 久久人做人爽一区二区三区| 精品国产一区二区三区香蕉事| 国产在线观看一区二区三区| 亚洲AV无码一区二三区| 国产福利视频一区二区 | 无码毛片一区二区三区视频免费播放| 午夜性色一区二区三区不卡视频 | 国产伦精品一区二区三区精品 | 国产手机精品一区二区| 激情爆乳一区二区三区| 久久高清一区二区三区|