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 一般并不放入版本库,而只是共享。因为如果放入版本库,从客户端下载后的文件属性是只读的,有很多不方便。

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

相关文章
|
18天前
|
安全 Java 数据安全/隐私保护
在Java项目中集成单点登录(SSO)方案
在Java项目中集成单点登录(SSO)方案
|
16天前
|
存储 算法 安全
Java面试题:Java内存模型及相关知识点深度解析,Java虚拟机的内存结构及各部分作用,详解Java的垃圾回收机制,谈谈你对Java内存溢出(OutOfMemoryError)的理解?
Java面试题:Java内存模型及相关知识点深度解析,Java虚拟机的内存结构及各部分作用,详解Java的垃圾回收机制,谈谈你对Java内存溢出(OutOfMemoryError)的理解?
25 0
|
16天前
|
存储 运维 Java
Java面试题:JVM的内存结构有哪些主要部分?请简述每个部分的作用
Java面试题:JVM的内存结构有哪些主要部分?请简述每个部分的作用
32 9
|
18天前
|
设计模式 消息中间件 监控
如何在Java项目中实现可扩展性架构
如何在Java项目中实现可扩展性架构
|
17天前
|
设计模式 Java 数据库连接
Java中的设计模式在实际项目中的应用
Java中的设计模式在实际项目中的应用
|
18天前
|
SQL NoSQL Java
如何在Java项目中实现分布式锁
如何在Java项目中实现分布式锁
|
18天前
|
消息中间件 监控 Java
在Java项目中实现事件驱动架构
在Java项目中实现事件驱动架构
|
18天前
|
缓存 前端开发 Java
在Java项目中实现跨域资源共享(CORS)
在Java项目中实现跨域资源共享(CORS)
|
18天前
|
缓存 前端开发 Java
在Java项目中实现高性能的文件上传下载
在Java项目中实现高性能的文件上传下载
|
22天前
|
JavaScript 前端开发 Java
Java数字化产科管理系统源码,多家医院应用案例,可直接上项目
Java开发的数字化产科管理系统,已在多家医院实施,支持直接部署。系统涵盖孕产全程,包括门诊、住院、统计和移动服务,整合高危管理、智能提醒、档案追踪等功能,与HIS等系统对接。采用前后端分离架构,Java语言,Vue前端,若依框架,MySQL数据库。优势在于提升就诊效率,降低漏检率,自动报表生成,减少重复工作,支持数据研究,并实现医院与卫计委平台的数据互通,打造全生育周期健康服务。
31 4