idea打开java文件_idea怎么导入Java文件并运行

928996ea84d973ba325168b197a9ab25.png

idea怎么导入Java文件并运行?

通常一个团队中可能有人用eclipse,有人用intelliJ,那么经常会出现需要导入别人用eclipse建好的web项目。而IntelliJ提供了多种项目类型的导入方式,其中就有eclipse。

在初始窗口中点击Import Project,在文件树中选择你的项目,打开导入窗口,选择Eclipse选项,点击下一步

41804258738cf68f74c9664b892e2a80.png

选择你的项目名称,可以选择下方的Open Project Structure after import,会在导入完成后,直接打开项目设置窗口;若不选,可以后面手动打开,区别不大。下一步。

886a187aea2b64afaf633b899632cc1c.png

选择jdk,我这里已经配置好。若没有,点击左侧+号,配置jdk信息。然后选择一项你需要的jdk版本,点击完成。

30370d656197622a17fbbb5c87af79d5.png

导入就完成了,这时候主窗口就打开了,左侧是项目目录,右侧是编辑区域。下图是目录树结构,发现已经生成了.idea目录和web_test.iml文件,这些是idea的IDE依赖文件。

d256208a241241cc654ad74f91f0f956.png

若是前面选择了Open Project Structure after import,此时会自动打开下图窗口,若是没有选择,那么鼠标点击项目名称后,按F4打开。此时我们看到highlight部分是选择的jdk版本,下面是默认的编译输出路径,但是这个暂时是没用的,后面会被覆盖掉,所以不用管它。

7808a6c2c2a7cb2fce4b73c7c0850574.png

左侧选择下一个菜单,Modules,这是idea的概念,project下面包含了Modules。这里插一句,有很多人会对这个概念很迷糊甚至不齿,但这个概念的确是正确的,它是来自于maven的思想,如果你看到过一些大型开源软件,开源nosql的源码就知道,一个project下面会分很多模块开发。但是对于常规的java web来说,不用管那么多,就理解为一个project就是一个module,两者合二为一就行。

这个菜单下,首先点击右侧三个横向标签页Dependencies,看下图,底下显示了3 errors found,另外我手贱去画了几条高亮,其实这些高亮处都是红字,说明在idea里是不存在的。包括SDK一栏,和下面两个jar包,都是从eclipse依赖文件中读出的,因此全部删掉。

84262f1c958066d1dc0a68c83e104a79.png

然后选择三个横向标签页的Paths,会看到highlight处,这里就是我说的覆盖掉前面的编译输出路径,当然,使用默认就可以,不需要改动。会将class文件放到src同级的build目录下。

f16ecf9f49f8999b592c182abe125254.png

三个标签页的第一个Sources如下图,没有需要修改的,这里主要定义了几个目录的角色,通过颜色标识,比如src默认定义为Sources,其他暂时都没有角色。而如果项目是用maven构建的,那么Sources,Tests,Resources和Test Resources就都有对应的目录了。可以看出,idea很大程度上都是依靠于maven的思想,或者说它底层很多地方就是靠maven来运行的。而这几个不同的目录角色,各有一些独有的特性,如果不去搞清楚也不要紧。因为这些目录,对于eclipse来讲,都是classpath一个角色。

85dc31b63902c9271fe5b447626964f7.png

接着,选择左侧Facets菜单,这个概念在eclipse里也是有的,就是标明项目是由哪些组件构成的,如web,spring,strtus,hibernate等。点击+号,进行选择,这里选择web。

bfffc49d476056a136cfc8ea66714c84.png

点击后,会发生有趣的事情,左侧菜单会跳转到Modules,而右侧,展现出web配置相关的表单。关于左侧的跳转,你在配置万Facets后会发现,这两个菜单项中都会存在这些配置,web,spring等等。我并不是很理解为什么,猜测和多模块的思想有关。

右侧配置项中,两处高亮,上面是web.xml路径,下面是web根目录。这里是默认路径,与我们不符,需要手动修改。因为idea默认web根目录名字为web,而不是eclipse的WebContent,像MyEclipse是WebRoot。

0a5d7299456885fa475ecd479c2b36af.png

修改好后,看到右下角,有一个按钮,Create Artifact,这又是maven地概念了,这个Artifact指的就是将要投到tomcat里去跑的那个目录。只不过它不会真的拷贝到tomcat安装目录下。只是会让tomcat来寻找这个路径,运行目录下面的程序。

04db5f9dfb6e79a89c5172fe721aa1ab.png

点击后,左侧跳到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,是有原因的,这里就不说了。

660341fc3c0203e408b081abf118806a.png

点击OK就可以了,这样项目配置就算完成了。然后是配置tomcat。

上部菜单栏会有一个小三角,下拉后选择Edit Configuration

b91c929dffd8ef61367db7fc48da15be.png

弹出窗口后,按图示选择。

a748b5c274bc8e067e6c77f97edaeb77.png

选择后,打开tomcat配置表单。

name,随便取,我一般取tomcat5/6/7。Application Server,选择一个以关联的tomcat版本,若没有关联过,点击右侧Configure做关联。After launch可以勾选,在start/restart tomcat后会自动打开浏览器并访问指定url。右下角有一个和session相关的勾选框,可以勾选,作用是restart以后,前面session中的值可以自动设置,就不用再次登陆啦~~

fb325bdc17ed0159e79061f743d1a535.png

切换到第二个标签页deployment,点击右侧+号,选择第一项artifact,选择刚才创建的那个artifact,

a30af642c78ddafb0bb51381c489bcd1.png

右侧的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

f3eec642d99d463fa929f768d7281d31.png

点击OK,tomcat配置就结束了,然后就可以开始运行tomcat了。界面上部会有tomcat图标,右方有run, debug图标,点击即开始运行。浮出run/debug Panel。

d4c153aef7c78b20fffc86fa6b200f73.png

如果log一切正常,就说明运行起来了。在前面的过程中,存在一些配置,对开发过程还是有帮助的,但是与运行起来不影响,就不一一举例说明了。

推荐教程: 《java教程》

  • 2
    点赞
  • 12
    收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:游动-白 设计师:我叫白小胖 返回首页
评论

打赏作者

weixin_40008644

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值