Python
Java
PHP
IOS
Android
Nodejs
JavaScript
Html5
Windows
Ubuntu
Linux
IntelliJ使用指南—— 导入Eclipse的Web项目
2023-05-16
通常一个团队中可能有人用eclipse,有人用intelliJ,那么经常会出现需要导入别人用eclipse建好的web项目。而IntelliJ提供了多种项目类型的导入方式,其中就有eclipse。
在初始窗口中点击Import Project,在文件树中选择你的项目,打开导入窗口,选择Eclipse选项,点击下一步
选择你的项目名称,可以选择下方的Open Project Structure after import,会在导入完成后,直接打开项目设置窗口;若不选,可以后面手动打开,区别不大。下一步。
选择jdk,我这里已经配置好。若没有,点击左侧+号,配置jdk信息。然后选择一项你需要的jdk版本,点击完成。
导入就完成了,这时候主窗口就打开了,左侧是项目目录,右侧是编辑区域。下图是目录树结构,发现已经生成了.idea目录和web_test.iml文件,这些是idea的IDE依赖文件。
若是前面选择了Open Project Structure after import,此时会自动打开下图窗口,若是没有选择,那么鼠标点击项目名称后,按F4打开。此时我们看到highlight部分是选择的jdk版本,下面是默认的编译输出路径,但是这个暂时是没用的,后面会被覆盖掉,所以不用管它。
左侧选择下一个菜单,Modules,这是idea的概念,project下面包含了Modules。这里插一句,有很多人会对这个概念很迷糊甚至不齿,但这个概念的确是正确的,它是来自于maven的思想,如果你看到过一些大型开源软件,开源nosql的源码就知道,一个project下面会分很多模块开发。但是对于常规的java web来说,不用管那么多,就理解为一个project就是一个module,两者合二为一就行。
这个菜单下,首先点击右侧三个横向标签页Dependencies,看下图,底下显示了3 errors found,另外我手贱去画了几条高亮,其实这些高亮处都是红字,说明在idea里是不存在的。包括SDK一栏,和下面两个jar包,都是从eclipse依赖文件中读出的,因此全部删掉。
然后选择三个横向标签页的Paths,会看到highlight处,这里就是我说的覆盖掉前面的编译输出路径,当然,使用默认就可以,不需要改动。会将class文件放到src同级的build目录下。
三个标签页的第一个Sources如下图,没有需要修改的,这里主要定义了几个目录的角色,通过颜色标识,比如src默认定义为Sources,其他暂时都没有角色。而如果项目是用maven构建的,那么Sources,Tests,Resources和Test Resources就都有对应的目录了。可以看出,idea很大程度上都是依靠于maven的思想,或者说它底层很多地方就是靠maven来运行的。而这几个不同的目录角色,各有一些独有的特性,如果不去搞清楚也不要紧。因为这些目录,对于eclipse来讲,都是classpath一个角色。
接着,选择左侧Facets菜单,这个概念在eclipse里也是有的,就是标明项目是由哪些组件构成的,如web,spring,strtus,hibernate等。点击+号,进行选择,这里选择web。
点击后,会发生有趣的事情,左侧菜单会跳转到Modules,而右侧,展现出web配置相关的表单。关于左侧的跳转,你在配置万Facets后会发现,这两个菜单项中都会存在这些配置,web,spring等等。我并不是很理解为什么,猜测和多模块的思想有关。
右侧配置项中,两处高亮,上面是web.xml路径,下面是web根目录。这里是默认路径,与我们不符,需要手动修改。因为idea默认web根目录名字为web,而不是eclipse的WebContent,像MyEclipse是WebRoot。
修改好后,看到右下角,有一个按钮,Create Artifact,这又是maven地概念了,这个Artifact指的就是将要投到tomcat里去跑的那个目录。只不过它不会真的拷贝到tomcat安装目录下。只是会让tomcat来寻找这个路径,运行目录下面的程序。
点击后,左侧跳到Artifact菜单,右侧展现配置表单。这个过程与你手动切换到Artifact菜单,然后点击+号选择打包类型的效果是一样的。刚才那个按钮是idea的智能化行为。
表单中,name,随便取,可以不用修改。Type,Web Application: Exploded是web开发的常用类型,无需修改。Output directory,输出路径就是这个Artifact的目录所在,idea会将所有需要的资源,包括class,lib,web目录等等以tomcat能够识别的目录结构拷贝到这里。而tomcat会直接使用这个目录运行系统。默认是与src平级的out目录下。一般也不用修改。
右侧的区域Available Elements中,最有可能出现的就是lib目录下的jar包,这里测试环境我忘了准备。但是一般情况下会列出一个jar包列表。这时候会有红线提示,要你把jar包加入左侧的输入目录结构中。那么右键菜单中选择Put into Output Root。这样错误提示会消失。但是!!我这里要提一下,这个步骤其实现在的场景下是无效的,或者说这个错误提示完全不用管它。因为你会发现你即使不把jar包导入左边,运行时,lib下的所有jar包依然会拷贝到artifact目录下。但这不是idea的bug,是有原因的,这里就不说了。
点击OK就可以了,这样项目配置就算完成了。然后是配置tomcat。
上部菜单栏会有一个小三角,下拉后选择Edit Configuration
弹出窗口后,按图示选择。
选择后,打开tomcat配置表单。
name,随便取,我一般取tomcat5/6/7。Application Server,选择一个以关联的tomcat版本,若没有关联过,点击右侧Configure做关联。After launch可以勾选,在start/restart tomcat后会自动打开浏览器并访问指定url。右下角有一个和session相关的勾选框,可以勾选,作用是restart以后,前面session中的值可以自动设置,就不用再次登陆啦~~
切换到第二个标签页deployment,点击右侧+号,选择第一项artifact,选择刚才创建的那个artifact,
右侧的Application context作用是你的url访问根路径,默认是/,就是说你的url中不包含我们以往所习惯的项目名,比如若是在web根下有index.jsp,那么路径就是http://127.0.0.1:8080/index.jps,而不是http://127.0.0.1:8080/web_test/index.jsp,当然,出于对传统的习惯,这一项你可以改成/web_test
点击OK,tomcat配置就结束了,然后就可以开始运行tomcat了。界面上部会有tomcat图标,右方有run, debug图标,点击即开始运行。浮出run/debug Panel。
如果log一切正常,就说明运行起来了。在前面的过程中,存在一些配置,对开发过程还是有帮助的,但是与运行起来不影响,就不一一举例说明了。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)
Intellij
eclipse
Web
使用指南
IntelliJ使用指南—— 导入Eclipse的Web项目 的相关文章
Ruby On Rails - 在控制器中使用关注点
可能的菜鸟警告 刚接触 RoR 我正在尝试在 RoR 中使用关注点 现在我只写了一个非常简单的问题 app controllers concerns foo rb module Foo extend ActiveSupport Concer
Checkstyle 问题:创建格式化程序配置文件
我下载了大学的 checkstyle 插件 以便像我的教授想要的那样检查代码 我们得到了一个 xml 配置文件 我用另一个 checkstyle 配置创建了 首选项 gt Checkstyle gt 新建 我还将其设置为默认值 现在我们必须
如何在必要时自动将 @Override、@Deprecate 和 static 修饰符添加到所有项目 Java 类的方法中?
我需要插入 Override https docs oracle com javase 9 docs api java lang Override html Deprecated https docs oracle com javase 9
访问 java jigsaw 模块中的资源文件[重复]
这个问题在这里已经有答案了 我正在尝试从项目中的类访问 Eclipse 项目中的文件 我需要将该项目声明为 jigsaw 模块才能从其他项目访问它 但是通过这样做 我无法再访问项目中的 example png 等文件 这是我的项目结构 pr
如何将 JAVAX-WS 端点绑定更改为 SOAP 1.2?
我正在使用发布测试 WS 实现Endpoint publish 用于在 Visual Studio 中使用 根据文档 http metro java net nonav 1 2 docs endpoint html默认的 SOAP 绑定是1
比较在 Eclipse Neon 中不工作
我 最后 尝试从 Mars 2 升级到 Eclipse Neon 安装 SVN 支持和 SVNKit 1 8 14 连接器后 我可以访问我的存储库 然而Compare不管用 如果我右键单击已修改的文件 然后选择与工作副本中的基础进行比较将显
Eclipse(STS)+ Maven
我基本上有两个问题 有没有办法从 Eclipse 调用 Maven 控制台 我可以在哪里写eclipse eclipse 并开始构建 eclipse 项目 哪里有STS http www springsource com products
如何在odoo中重写js函数
我想加载 shop checkout url 函数是 odoo define change info order website sale change info order function require use strict oe w
更改 eclipse 中 .txt 文件编辑器的外观
我正在为 Eclipse 使用深色主题 当我打开扩展名为 txt 的文件时 文本和背景的颜色都是黑色 如何更改此 txt 文件编辑器的外观 我想将文本颜色设置为白色 我对首选项菜单感到困惑 我已经找到了 在首选项菜单中选择 General
Maven 多模块项目结构问题
自从过去几周构建我的 Maven 多模块项目以来 这是我的一次有趣的经历 当我决定使用 Maven 进行构建生命周期管理时 我有几个原因希望选择 Maven A 大多数开发团队都是分开的 这样每个团队都可以在项目中的单独模块上工作 例如团队
Eclipse 中的字/行计数工具
有没有任何工具或插件可以做到这一点 CodeBlock 有这个简洁的工具 非常好 不知道它是否可以在 Eclipse 上使用 谢谢 http metrics sourceforge net http metrics sourceforge
如何保护我的网站免遭 HTTrack 或其他软件的翻录?
我最近获得了批准的网站模板主题森林 http themeforest net 我的网站流量过多 并注意到我在 Themeforest 上的演示被 HTTrack 等某些软件破坏 如果这种情况持续下去 该产品的销量最终可能会下降 那么 有什么
Gradle 1.3:build.gradle 不构建类
这里有一个新问题 我有一个 build gradle 文件apply plugin java在其中 并与 java 项目 包关联 当我跑步时gradle build从命令行我得到 compileJava UP TO DATE process
为什么使用HTTP协议时需要指定端口号?
即使我们使用HTTP协议 为什么还需要用IP地址指定端口号 例如 http xyz 8080 这到底是什么意思 我们已经知道 在使用 HTTP 时 请求将在端口 80 上提供服务 那么为什么我们要显式指定端口呢 HTTP 的默认端口为 80
使用“邮递员”chrome 应用程序的肥皂请求正文
假日网络服务 的肥皂请求正文会是什么样子 http www holidaywebservice com HolidayService v2 HolidayService2 asmx wsdl http www holidaywebservi
Eclipse:缺少 Java 构建路径
我正在尝试使用 Eclipse 来使用适用于 Android 的 Google SDK 教程 我能够让前两个项目正常工作 但是当运行第三个 R java 时消失了 所以我放弃了 我根据练习 3 的解决方案集制作了一个全新的包 它充满了错误
以编程方式检查 .class 文件是否扩展特定类
我有一个问题 我已经尝试解决好几个小时了 在 Eclipse 插件中 我有一个 ArrayList 其中包含一些 java class 文件的完整路径 作为字符串 我想做的是检查列表中包含的类是否扩展了特定的类 我考虑过解析该文件 查找 e
Android:R 类停止生成
我是 android 编程的新手 我正在做 Commsware 教程中的教程 确切地说是 T3 教程 期间我清理了项目 之后 R 类文件停止生成 我删除了该项目 看起来相同的错误正在传播到我正在创建的其他新项目 新创建的项目也会出现此错误
如何使用 Eclipse 作为 Javascript IDE?
我从官方下载页面下载了 eclipse Javascript IDE 但是 当我启动应用程序时 它显示 必须提供 Java 运行时环境或 Java 开发工具包才能运行 eclipse 我已经有一个运行良好的 eclipse 的 java I
Netty Nio java 中的通信
我想在 Netty nio 中创建一个具有两个客户端和一个服务器的通信系统 更具体地说 首先 我希望当两个客户端与服务器连接时从服务器发送消息 然后能够在两个客户端之间交换数据 我正在使用本示例提供的代码 https github com
随机推荐
web安全之token和CSRF攻击
上文我转载了两篇关于ThinkPHP令牌验证的文章 xff08 ThinkPHP中的create方法与自动令牌验证 xff09 其中提及到了 token xff0c 这里针对 token 的作用 xff0c 转载了另外两篇文章 xff08
java中的==、equals和hashCode以及hashCode生成
转载自 xff1a xff08 点击打开链接 xff09 前言 java中 61 61 equals hashCode 都和对象的比较有关 xff0c 在java中这三者各有什么用处呢 xff0c 即java中为什么需要设计这三种对象的比较
javascript调用微信或QQ扫一扫
项目里为了体验做的好点 xff0c 想直接通过js调用手机的扫一扫 xff1a 服务的用户主要是通过 xff1a 微信或QQ 之前使用过 微信或QQ的分享 腾讯移动WEB开发平台的 39 对外分享组件接口文档 39 http open mo
Java中的反射机制
获取类的类类型的3种方式 xff0c 以及如何通过类的类类型创建实例对象 xff1f ClassDemo1 java package com reflect public class ClassDemo1 public static voi
Java中的自定义注解
自定义注解 Description java xff08 这里自定义Description注解 xff09 package com ann test import java lang annotation Documented import
Java中自定义注解的应用
来自 慕课网 的学习 我们可以使用自定义注解 xff0c 实现ORM xff0c 即对象 关系的映射 通过自定义注解 xff0c 定义对象对应数据表的属性 xff0c 如表名 xff0c 表字段等 Table java xff08 Tabl
Intellij IDEA下的第一个Hibernate项目
参考 xff1a intellij配置hibernate自动生成hbm xml文件 从零开始用Intellij idea14创建hibernate项目 下面我要讲的创建方式 xff0c 可能更加原生态 xff0c 更加类似于Eclipse下
Intellij IDEA使用注解创建Hibernate项目中的OR映射类
上回说到 xff1a Intellij IDEA下的第一个Hibernate项目 我们需要创建 对象到关系的映射配置文件 xff0c 如 entity hbm xml xff08 其中 entity 是我们将要创建的实体 xff09 下面讲
Hibernate中Blob对象类型的使用
使用Intellij IDEA创建Hibernate项目 xff0c 目录结构如下 xff1a 其中 assets app png 为将要存储的照片 xff0c src hibernate cfg xml 为Hibernate的配置文件 x
Hibernate组件映射
转载自 xff1a 点击打开链接 在Hibernate中 component 是某个实体的逻辑组成部分 xff0c 它与实体的根本区别是没有oid xff08 对象标识符 xff09 xff0c component是一个被包含的对象 它作为
Hibernate中的单向一对多关联
源自 imooc 中的学习 Hibernate中的单向一对多关联 xff0c 这里举例 班级对学生 的单向一对多关联 xff0c 即一个班级可以有多个学生 那么在Hibernate中实体对象间如何体现出单向一对多的关联关系呢 xff1f 如
Hibernate中的单向多对一关联
继上回讲到 Hibernate中的单向一对多关联 xff0c 这次来实现一下Hibernate中的单向多对一关联 对原来的项目修改如下 xff1a Hibernate中的单向多对一关联 xff0c 需要我们在多方增加一个一方的属性 xff0
Hibernate中的双向多对一关联以及 inverse属性、cascade属性的用法
上回 说了 Hibernate中的单向一对多关联 和 Hibernate中的单向多对一关联 这次针对这两个 单向 进行整合即可实现双向的多对一关联 如 xff1a 学生与班级的关系 在Grade类中需要添加 Set集合保存Student对象
优化器 optimizer
优化器 optimizer optimizer 优化器 xff0c 用来根据参数的梯度进行沿梯度下降方向进行调整模型参数 xff0c 使得模型loss不断降低 xff0c 达到全局最低 xff0c 通过不断微调模型参数 xff0c 使得模型
Hibernate中的多对多关联
源自 imooc 的学习 多对多关联是一种常见的关联关系 多对多关联关系一般采用中间表的形式来实现 xff0c 即新增一张包含关联双方主键的关联表 那么 xff0c 在Hibernate中如何实现多对多的关联关系呢 xff1f 多对多关联可
HQL数据查询基础(一)
源自 imooc 的学习 什么是HQL呢 xff1f HQL 是Hibernate Query Language xff0c Hibernate查询语言 xff1b 同时HQL是一种面向对象的查询语言 xff0c HQL查询的主体是映射配置
HQL数据查询基础(二)
继上回 xff08 HQL数据查询基础 xff08 一 xff09 xff09 说到的例子 网上商店 xff0c 来继续完善持久化类和配置文件的创建 上回 在 com imooc model 包中创建 Seller java 持久化类 xf
HQL数据查询基础(三)
继上回 xff08 HQL数据查询基础 xff08 二 xff09 xff09 xff0c 针对 网上商店 这个例子 xff0c 来讲解一些HQL简单的子句用法 xff08 以下的所有测试方法均在 MyTest java 测试类 xff08
Maven中pom.xml的解析
Maven项目中的 pom xml lt project xmlns 61 34 http maven apache org POM 4 0 0 34 xmlns xsi 61 34 http www w3 org 2001 XMLSche
IntelliJ使用指南—— 导入Eclipse的Web项目
通常一个团队中可能有人用eclipse xff0c 有人用intelliJ xff0c 那么经常会出现需要导入别人用eclipse建好的web项目 而IntelliJ提供了多种项目类型的导入方式 xff0c 其中就有eclipse 在初始窗
热门标签
nmi
lispmacros
kryonet
securescl
treap
grails21
goflag
gapdebug
arbre
mbaas
mapdeck
teaspoon
pysmt
solrsearch