天天看点

intellij idea -- 工程移植要做作曲家,不做演奏家~

前言:

        做课设在intellij idea导入时遇到了一点问题,现在记录一下解决过程:

环境:

        是一个 web项目,实现网上书店。可以注册,订书,查询用户的订单等等。分管理员和用户;管理员可以增删书籍,用户可以分类查看书籍,进行书籍的购买。

尝试:

直接open项目,结果应该是web项目,却在intellij idea 的project目录下没有出现web文件夹,但是后端测试文件是可以运行的。

第一次尝试:在想是不是导入的方式有问题,应该先建立web项目,然后再进行导入。结果并没有解决问题,查看了main.iml文件,发现web项目文件与源项目文件的区别是:

intellij idea -- 工程移植要做作曲家,不做演奏家~

web项目文件 type类型为web,而此文件 type为Spring

第二次尝试:上网查阅了很多资料,找到了解决方案:https://www.jianshu.com/p/39b2206999e7

并不是 mian.iml 文件的问题,而是facets配置的问题:

intellij idea -- 工程移植要做作曲家,不做演奏家~

在web resource directory下生成新的web文件夹,将原来的web文件夹下的所有内容进行拷贝,解决问题,可以运行。

课设的时候一直尝试,但是一直没有成功。

请教了我的偶像,我老哥!顺便他给我讲解了一些关于工程移植的知识,现在做下记录:

1. IDE所做的基本都是梳理项目文件,因此有三种编译文件:

maven >  gradle > ant , ant现在基本已经不用了

当出现导入项目时,直接导入项目为空时,此时应该先新建一个项目,然后进行拷贝,再根据编译文件类型进行 梳理。

gradle文件内容大致如下所示:

intellij idea -- 工程移植要做作曲家,不做演奏家~

repository 是 引用的外部库

sourceSets 指明源代码目录

dependencies 是编译时所用的文件

2. 此操作可以让 gradle自动对导入的项目进行梳理

intellij idea -- 工程移植要做作曲家,不做演奏家~
intellij idea -- 工程移植要做作曲家,不做演奏家~

3. gradle创建web项目:

intellij idea -- 工程移植要做作曲家,不做演奏家~

GroupId:工作组

ArtifactId:项目类别

Version:版本号

intellij idea -- 工程移植要做作曲家,不做演奏家~

GroupId以及ArtifactId主要会在寻找包时起作用,如图:

intellij idea -- 工程移植要做作曲家,不做演奏家~

4. 要指定函数入口

有的工程项目很大,编译器寻找入口会很困难,要在gradle里面进行指定:

intellij idea -- 工程移植要做作曲家,不做演奏家~
intellij idea -- 工程移植要做作曲家,不做演奏家~

感想:

IDE是开发的辅助工具,利用好也能事半功倍。但是主要还是软件架构的设计鸭!就像老哥说的,有些大牛不用IDE,直接记事本或者vim写代码。IDE千差万别,重要的还是软件的设计架构!

要做作曲家,不做演奏家~