# ProjectTemplate **Repository Path**: leolord/ProjectTemplate ## Basic Information - **Project Name**: ProjectTemplate - **Description**: No description available - **Primary Language**: Shell - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2014-12-14 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README #此项目已经废弃 ___ #ProjectTemplate ##简介 很多常用的工程,想要开始工作的时候,还需要按照规则创建很多目录结构和配置文件,这些结构或者文件一般都很通用,只需要改动几个字段。如果从现有的项目中拷贝文件,节省不了太多工作量,因为已经成型的一个项目本身其中的文件和文件夹就不会太少,从其中分辨出哪些是通用文件,哪些不是,也是要好好想想。所以我就创建了这个项目。这个项目中尽力通过少量的shell脚本和模板文件,创建一类空白的工程。目前这个项目的定向还不清晰,我只是放置了我可能用到的的几个工程生成脚本。 ##shell的好处 这个项目中鼓励使用shell脚本来执行一些通用命令,而并非npm/bower/grunt/gulp/maven/ant等工具,因为: 1. 这些工具中无可避免的需要配置/安装很多东西,同时在当使用这些工具的而遇到版本冲突的时候,处理冲突的过程从来就很痛苦,而shell的兼容性就好太多了。 2. 这些工具通常都会在硬盘上创建很多无用的文件(以bower为代表),而shell几乎不需要在硬盘上放任何没用的东西(有些特定的工具还是需要安装的)。 所以在编写这些模板(或者说生成器)的时候,尽量避免使用“重量级”的构建工具,这些工具在“减轻工作量”和“增加学习和维护成本”之间,几乎总是做了一个亏本的买卖。 ##固定搭配 这其中的每个文件夹中,我都想创建一个特定工具,这个工具只创建一类工程,这类工程有指定的依赖库,使用固定的框架,因为通常我不会频繁的切换我使用的款框架/库。创建过分通用的东西,就会堕入上面说的“重量级”工具的魔窟。 ##包含哪些东西 **spring-web-project** Java Web工程的模板,这个模板旨在创建一个基于Spring MVC、mybatis、mysql和velocity的web项目。 **web-multipage-project** 基于requirejs的一个多页面前端项目 ___