使用IDEA时的问题汇总

发布于 2019-04-19  42 次阅读


创建新项目时,没有Spring Initializr

这个问题主要出在IDEA社区版。IDEA社区版并没有这个选项,解决方法是点击Configure-Plugins,然后搜索Spring,出现Spring Assistant安装即可,以后直接用Spring Assistant来创建Spring项目。如图所示(我这里已经安装)。
安装1
安装2

IDEA修改Maven全局配置

其实这个操作非常简单,百度一下就会找到很多答案,但是为了把自己踩过的坑重新填一下,就记录一下自己在使用时设置的过程。

在学习Maven的过程中,用IDEA编写程序时会自动下载Jar文件到本地,而这些文件默认是下载到C:/Users/"用户名"/.m2/repository文件下,而对于一个强迫症来说,不能把个人文件夹弄得十分条理是十分难受的,在IDEA中修改过好几次设置都仅仅对当前的项目有用,一旦创建新项目又会跑到C盘下的.m2文件夹中,比较让人抓狂。

先说一下,IDEA安装后是会自带Maven的,而IDEA会读取其自带的Maven配置文件来确定下载的jar包位置。但是IDEA自带的Maven可能版本较低所以我们需要下载一个新的版本的Maven,而下载好的Maven默认下载位置也是前面提到的文件夹,所以我们首先要修改我们下载的Maven的配置文件,然后再设置IDEA。

下面说一下具体是设置过程:

首先打开我们自己安装的Maven位置下的conf文件夹中的settings.xml文件,我这里安装的位置是D:/Software/Apache/apache-maven-3.6.0/,通过查找找到标签,然后将中间的路径改成你想要的路径(下面称为localRepository路径),我这里设置的是D:/Software/Apache/apache-maven-3.6.0/repository(repository文件夹是自己创建的)。
如下所示:

<!-- localRepository
   | The path to the local repository maven will use to store artifacts.
   |
   | Default: ${user.home}/.m2/repository
  <localRepository>D:/Software/Apache/apache-maven-3.6.0/repository</localRepository>
  -->

然后对IDEA修改。随便打开一个项目,点击File - Other Settings - Settings for New Projects...,然后按照下图所示进行设置。
IDEA修改
先将Maven home directory改到我们自己下载的Maven的安装位置,然后点击settings file后面的Override按钮,将按钮前面的路径改为我们之前修改的settings.xml
文件位置,最后点击Local repository后面的Override按钮,将其前面的路径改为localRepository路径

到此整个设置过程完成。

修改Maven远程仓库

还是在上面所说的settings.xml文件中,在其<mirrors> </mirrors>之间添加代码,修改后如下:

<mirrors>
  <mirror>
    <id>alimaven</id>
    <name>aliyun maven</name>
    <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
    <mirrorOf>central</mirrorOf>
  </mirror>
</mirrors>

这里采用的是阿里云的镜像。

如何导入jar包

IDEA不像Eclipse,直接在设置中的Java -> Build Path -> User Libraries中添加就可以,导入jar包需要在File -> Project Structure -> Libaraies中添加(当然这个只是在当前项目中添加jar包,如果想其他项目也添加需要在Structure for New Projects中设置)。

如何导入OpenCVjar包

OpenCV是一款开源视觉识别框架,支持C、C++、Java和Python。在官网上下载好exe文件安装后(其实就是解压),按照上述步骤先添加"安装路径/build/Java"下的jar包,再添加此目录下的x64或x86文件夹(一般视电脑安装的Java为准)。

IDEA闪退或运行程序时返回Insufficient Memory...信息

在网上搜到的教程都是说由于设置的内存太大的原因,如果可用内存没有2G却设置的2G就会闪退。但是自己在使用时刚打开CPU常出现100%占用的情况,且设置的并不大,后来闪退了几次软件提示说设置内存太小...,看来设置的太大或太小都不合适。

设置过程如下:

  1. 转到软件安装目录下的bin文件夹
  2. 找到idea.exe.vmoptions和idea64.exe.vmoptions两个文件,一般默认的是idea.exe.vmoptions文件,但是推荐两个都改
  3. 打开两个文件,会发现有以下内容:
-server
-Xms128m
-Xmx540m
-XX:ReservedCodeCacheSize=240m
-XX:+UseConcMarkSweepGC
-XX:SoftRefLRUPolicyMSPerMB=50
-ea
-Dsun.io.useCanonCaches=false
-Djava.net.preferIPv4Stack=true
-Djdk.http.auth.tunneling.disabledSchemes=""
-XX:+HeapDumpOnOutOfMemoryError
-XX:-OmitStackTraceInFastThrow
  1. 我们修改的就是Xmx后面的数字,根据自身情况设置,我这里默认的是540m,将其设置为1024m后暂时还没有出现闪退的情况
  2. 保存退出

还有一种可能就是虚拟内存没开或者太小。我的电脑是8G内存,之前一直是系统自动管理虚拟内存,大小5G,感觉太大了就自己改为了2G,结果就时常出现内存不足的情况(即使这时内存占用还没有超过80%),将其改为自动管理后内存不足的情况就少了很多。

(本博客创建于2018-12-07)


一沙一世界,一花一天堂。君掌盛无边,刹那成永恒。