java vc vb 项目结构

简介: 引用:http://www.cnblogs.com/suman/archive/2010/10/22/1858226.html 常见的大型软件项目开发文件目录结构 1. Java 项目 调试阶段编译后的 .class 文件放到 classes 目录。

引用:http://www.cnblogs.com/suman/archive/2010/10/22/1858226.html

常见的大型软件项目开发文件目录结构

1. Java 项目

调试阶段编译后的 .class 文件放到 classes 目录。将 classes 目录和 lib 中的其他工具 .jar 放到 classpath 中。运行当前目录是项目根目录。

正式发行版的 .class 放到一个或者多个 .jar 文件中,一般放在目根目录,也要加到 classpath 中去。

由于在 Java 项目中,经常用多种编译器进行编译,比较普遍的是,开发是使用开发工具编译,打包时使用 Javac 编译, project 文件被放到次要的位置。

2. Visual Basic 项目

Visual Basic 项目编译后的 COM DLL 和 Exe 一般放在项目根目录下面。由于 Visual Basic 中做 COM DLL 很容易,因而大量使用子项目编译 COM DLL,通过主 Exe 启动后加载。

以上的目录设置存在一种问题: 调试的时候,当前目录在子项目目录下面,比如为 module1_submodule2,而发行版本的当前目录在项目根目录下面,因此需要在程序启动的时候判断处理。

3. Visual C++ 项目

调试阶段,所有 dll,lib 文件放到 build 和 lib 目录下面。对于子项目, build 的时候直接把 dll , exe 放到 build 目录下面。

同 Visual Basic 项目一样,存在调试阶段和正式版本的当前目录不一致的问题。不过, VC 的项目属性中可以设置 working directory ,所以这个问题也很容易解决。

对于大型项目,还存在一个问题,那就是整个项目编译时间很长,可能达到半个小时以上。让每个人每天上午从版本库里取最新代码,这是很正常的做法。但是没有必要让每个人每天上午都花半个小时以上时间。比较常见的做法是,在某一台服务器上面运行一个定时编译批处理程序,一般在半夜,编译后的文件放在共享目录中。这样程序员每天上班后只需要从版本库里取最新的源代码,然后复制编译后的文件,如 .class, .obj,.dll,.exe。

这里有另外一个要注意的地方,就是不同计算机的时间要同步。不能服务器时间是五月一日,我的计算机时间是六月一日。编译器可以做到增量编译,节省时间。增量编译比较源代码的时间和编译后的文件时间。由于编译后的文件是从服务器中复制得到,不同计算机时间不能相差太多。

自动编译后的文件如 .class, .obj,.dll,.exe 一般并不放入版本库,而只是共享。因为如果放入版本库,从客户端下载后的文件属性是只读的,有很多不方便。

当然,如果只是小型项目,所有文件放在一个目录也没有多大关系,更省事。

相关文章
|
3天前
|
运维 Java
Java版HIS系统 云HIS系统 云HIS源码 结构简洁、代码规范易阅读
云HIS系统分为两个大的系统,一个是基层卫生健康云综合管理系统,另一个是基层卫生健康云业务系统。基层卫生健康云综合管理系统由运营商、开发商和监管机构使用,用来进行运营管理、运维管理和综合监管。基层卫生健康云业务系统由基层医院使用,用来支撑医院各类业务运转。
21 5
|
1月前
|
Java
JAVA选择结构
JAVA选择结构
18 1
|
1月前
|
Java 应用服务中间件 开发工具
苍穹外卖》电商实战项目(java)知识点整理(上)
苍穹外卖》电商实战项目(java)知识点整理(上)
189 3
|
1月前
|
SQL Java 应用服务中间件
Java项目防止SQL注入的四种方案
Java项目防止SQL注入的四种方案
38 0
|
29天前
|
人工智能 监控 算法
java智慧城管源码 AI视频智能分析 可直接上项目
Java智慧城管源码实现AI视频智能分析,适用于直接部署项目。系统运用互联网、大数据、云计算和AI提升城市管理水平,采用“一级监督、二级指挥、四级联动”模式。功能涵盖AI智能检测(如占道广告、垃圾处理等)、执法办案、视频分析、统计分析及队伍管理等多个模块,利用深度学习优化城市管理自动化和智能化,提供决策支持。
206 4
java智慧城管源码 AI视频智能分析 可直接上项目
|
13天前
|
监控 数据可视化 安全
智慧工地SaaS可视化平台源码,PC端+APP端,支持二开,项目使用,微服务+Java++vue+mysql
环境实时数据、动态监测报警,实时监控施工环境状态,有针对性地预防施工过程中的环境污染问题,打造文明生态施工,创造绿色的生态环境。
11 0
智慧工地SaaS可视化平台源码,PC端+APP端,支持二开,项目使用,微服务+Java++vue+mysql
|
14天前
|
SQL Java Go
java项目超市购物管理系统
java项目超市购物管理系统
|
14天前
|
Java
java项目日历表
java项目日历表
|
26天前
|
Java Maven
运行maven项目出现Error:java: JDK isn‘t specified for module ‘XXX‘
运行maven项目出现Error:java: JDK isn‘t specified for module ‘XXX‘
12 0
|
26天前
|
缓存 NoSQL Java
Java项目:支持并发的秒杀项目(基于Redis)
Java项目:支持并发的秒杀项目(基于Redis)
26 0

热门文章

最新文章