Cet article vous présentera la configuration et l'utilisation de VScode + Java. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer. J'espère qu'il sera utile à tout le monde.
Recommandations associées : "Tutoriel de base vscode"
1 vs code
Je suis nouveau dans vs code, mais j'en suis tombé amoureux au premier regard.
J'ai récemment essayé d'utiliser le langage nim. Il a été recommandé d'utiliser vs code. Je l'ai essayé et je n'ai pas pu le contrôler. J'ai donc eu une idée audacieuse : tout basculer vers vs code. Quelle est la situation actuelle ? J'utilise webstorm/sublime pour la première partie, idea pour java, PyCharm pour python, RubyMine pour ruby et vs express pour c#.
vs code est en fait un éditeur, un gilet, mais différents langages peuvent implémenter les plug-ins correspondants et les empaqueter dans un IDE. C'est très bon et très avancé ! Le plus important est qu’il soit open source et gratuit !
1.1 Qu'est-ce que l'IDE
Un environnement de développement intégré (IDE, Integrated Development Environment) est une application utilisée pour fournir un environnement de développement de programme, généralement Comprend des outils tels que des éditeurs de code, des compilateurs, des débogueurs et des interfaces utilisateur graphiques. Il s'agit d'une suite de services logiciels de développement intégrés qui intègre des fonctions d'écriture de code, des fonctions d'analyse, des fonctions de compilation, des fonctions de débogage, etc.
Par exemple, la série Visual Studio de Microsoft, en tant qu'IDE c++/c#
IDE Java tels qu'Eclipse et IntelliJ IDEA.
1.2 VS code est un éditeur
vs code n'est pas un IDE, c'est un éditeur, un éditeur idéal qui peut Il est packagé dans un IDE via le plug-in du langage correspondant.
vi est également un éditeur. De nombreux programmeurs utilisent vi pour le développement et des outils indépendants pour la construction, tels que make, ant, maven, gradle, etc. ctags est utilisé pour indexer les symboles dans le code source. . . .
Alors pour les programmeurs, quel type d'éditeur est utile ?
Ouvrez le fichier rapidement et facilement, avec une coloration syntaxique et une belle apparence !
Édition : ajout, suppression, modification et vérification, riche et rapide
Symbole : requête de définition de symbole, saut, référence de symbole...
Gestion des dépendances : importer automatiquement les packages de dépendances
Analyse : structure de classe, relation d'héritage...
Invite automatique...
Autres fonctionnalités avancées. . .
Parmi les fonctionnalités ci-dessus, certaines peuvent être réalisées par vs code, et d'autres doivent être complétées par des plug-ins. Par exemple, la gestion des symboles et des dépendances liés aux fonctionnalités du langage doit être complétée par des plug-ins du langage correspondant. Vous ne pouvez pas reprocher à vs code d'être inintelligent lors de l'utilisation de vs code car le code ne peut pas passer à la définition.
2 java
Bien que l'expérience de l'idée soit également très bonne, elle semble parfois encore trop gonflée et pas assez fluide.
Bien sûr, il faut admettre que vs code ne peut pas correspondre aux fonctionnalités complètes fournies par idea. Pour les débutants, idea/eclipse est définitivement la voie à suivre. Cependant, en tant que programmeurs, nous devons également comprendre que la conception est un compromis. L'interface graphique méticuleuse de type nounou fournie par idea finira par paraître conviviale mais verbeuse. Un jour, lorsque vous mûrirez et grandirez, vous le ferez aussi. verbeux.
Extensions de support Java 2.1
https://code.visualstudio.com/docs/linguals/java
Suivez Documentation officielle, installez honnêtement les extensions liées à Java.
En bref :
VS Code Java IDE =
编辑器:vs code 构建工具: maven/gradle 语言支持:Eclipse ™ JDT Language Server
Prise en charge du langage 2.2 pour Java™ par Red Hat
Quelques fonctions telles que :
Attendez ! Évidemment, vs code ne fournira pas ces fonctionnalités au niveau du langage, c'est pourquoi JetBrains propose tant de produits :
vs code fournit les fonctionnalités IDE correspondantes via l'extension Pour Java, prise en charge du langage pour Java™ par l'extension Red Hat. fait ça.
Fournit la prise en charge du langage Java ™ via le serveur de langage Eclipse ™ JDT, qui utilise Eclipse ™ JDT, M2Eclipse et Buildship.
2.3 Qu'est-ce que JDT
JDT 叫做 Eclipse Java Development Tools
The JDT project provides the tool plug-ins that implement a Java IDE supporting the development of any Java application,
再看看 JDT core 都提供了哪些 vs code 需要扩展的功能:
A Java Model that provides API for navigating the Java element tree. The Java element tree defines a Java centric view of a project. It surfaces elements like package fragments, compilation units, binary classes, types, methods, fields.
A Java Document Model providing API for manipulating a structured Java source document.
Code assist and code select support.
An indexed based search infrastructure that is used for searching, code assist, type hierarchy computation, and refactoring. The Java search engine can accurately find precise matches either in sources or binaries.
Evaluation support either in a scrapbook page or a debugger context.
Source code formatter
需要注意的是,该 extension 使用了 Eclipse IDE 相关的实现。当生成一个新的 java 项目时,比如通过 mvn 来 generate 一个HelloWorld 项目:
mvn archetype:generate -DarchetypeGroupId=org.apache.maven.archetypes -DarchetypeArtifactId=maven-archetype-quickstart -DarchetypeVersion=1.3
然后用 vs code 打开项目目录,会看到项目目录中会随之生成几个文件和目录:
1 .settings
1.1 org.eclipse.jdt.core.prefs
" eclipse.preferences.version=1 org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 org.eclipse.jdt.core.compiler.compliance=1.6 org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning org.eclipse.jdt.core.compiler.source=1.6 "
1.2 org.eclipse.m2e.core.prefs
" activeProfiles= eclipse.preferences.version=1 resolveWorkspaceProjects=true version=1 "
2 .project
<?xml version="1.0" encoding="UTF-8"?> <projectDescription> <name>spring-ldap-user-admin-sample</name> <comment></comment> <projects> </projects> <buildSpec> <buildCommand> <name>org.eclipse.jdt.core.javabuilder</name> <arguments> </arguments> </buildCommand> <buildCommand> <name>org.eclipse.m2e.core.maven2Builder</name> <arguments> </arguments> </buildCommand> </buildSpec> <natures> <nature>org.eclipse.jdt.core.javanature</nature> <nature>org.eclipse.m2e.core.maven2Nature</nature> </natures> </projectDescription>
3 .classpath
<?xml version="1.0" encoding="UTF-8"?> <classpath> <classpathentry kind="src" output="target/classes" path="src/main/java"> <attributes> <attribute name="optional" value="true"/> <attribute name="maven.pomderived" value="true"/> </attributes> </classpathentry> <classpathentry excluding="**" kind="src" output="target/classes" path="src/main/resources"> <attributes> <attribute name="maven.pomderived" value="true"/> </attributes> </classpathentry> <classpathentry kind="src" output="target/test-classes" path="src/test/java"> <attributes> <attribute name="optional" value="true"/> <attribute name="maven.pomderived" value="true"/> <attribute name="test" value="true"/> </attributes> </classpathentry> <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"> <attributes> <attribute name="maven.pomderived" value="true"/> </attributes> </classpathentry> <classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER"> <attributes> <attribute name="maven.pomderived" value="true"/> </attributes> </classpathentry> <classpathentry kind="output" path="target/classes"/> </classpath>
要注意: 这些文件都是 extension 自动生成的,如果目录下没有生成相应的文件,那么就会出现各种问题,jdt 相关的很多功能无法正常使用,比如符号跳转,自动导入等。
如果用 IDEA 打开 java 项目,同样会创建类似的文件,只不过结构和名称不一样而已。
2.4 Java Classpath is incomplete. Only syntax errors will be reported
如果碰到该警告信息,说明 java 项目在打开过程中出问题了,缺少 .classpath .project 文件。有可能是以下原因,比如:
这种情况下,符号跳转,自动补全,导入等等功能,肯定无法正常使用。
但是使用 mvn 进行构建是没有问题的,一定要清楚,mvn 是构建工具,只要源码完整正确,有 pom.xml 文件,那么 maven 就能正常工作。
另外,发现当项目同时支持 maven 和 gradle 时,vs code 创建项目会失败,导致 classpath 相关文件无法产生。这个时候将 build.gradle 删掉,只留下 pom.xml 文件,再次打开项目文件夹,就可以了。
2.5 项目结构
如上图,正常启动的java项目,需要包含
其中 Java Projects 中包含 .classpath, .project, .settings
总结
总之,用 vs code 来作为 java ide 完全没有问题,使用过程中难免会碰到些问题,多查阅,多思考,应该能解决。
整体上很流畅!
更多编程相关知识,请访问:编程教学!!
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!