关于编译的那点事

我们常常在开发项目的时候会出现一些莫名其妙的错误(这些错误往往不是我们的代码出现的问题,因为代码的错误是比较容易直接找到的)。当你在处理错误而一筹莫展时,我们首先应该考虑到的是项目编译的问题。下面总结了处理编译问题的主要方法:

(1)清理你的项目

projec->clean 选择你要clean的项目,ok就行了。

(2)强制编译

右键点击项目->properties->java compiler->building->选中abort build when build path errors occur->apply,在从新部署项目。如果你想下次编译不要abort build when build path errors occur,你可以恢复原来的设置。

(3)删除文件

找到项目所在文件夹,删除在webroot下的webapp文件夹。

(4)从新部署



选择remove,在从新add你的项目到你的tomcate。

(5)重启myeclipse也有可能解决你的问题。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
引用[1]:文章围绕makefile文件的编写方式,向读者讲述如何在ubuntu平台上用交叉编译链 arm-none-eabi- 编译出 STM32F4xx 系列 MCU 的执行文件。文章核心在于讲述 arm-none-eabi- 在 Makefile 中的应用过程,对比于嵌入式可视编译器 keil_v5 有什么共同点,编译思维是怎样的,并完成一个简单项目 STM32F4xx_LED-Makefile 的编译工作。[1]引用[2]:还有,我们把 STM32F4xx_DSP_StdPeriph_Lib_V1.8.0\STM32F4xx_StdPeriph_Driver\src 里面的 .c 库文件缩减到需要用到的4个文件,那是因为如果把其他的文件添加进去,那么 Makefile 文件就因为要甄别需要用到的文件而变得十分复杂冗长,相比编写需要频繁修改的 Makefile 文件,增删几个文件就显得十分简单了。[2]引用[3]:ifneq ($(KERNELRELEASE),): KERNELRELEASE是在内核源码的顶层Makefile中定义的一个变量,在第一次读取执行此Makefile时,KERNELRELEASE没有被定义,所以make将读取执行else之后的内容。 如果make的目标是clean,直接执行clean操作,然后结束。 当make的目标为all时,-C (KDIR)指明跳转到内核源码目录下读取那里的Makefile; M=(PWD) 表明然后返回到当前目录继续读入、执行当前的Makefile。 当从内核源码目录返回时,KERNELRELEASE已被定义,make将继续读取else之前的内容。else之前的内容为kbuild语法的语句,指明模块源码中各文件的依赖关系,以及要生成的目标模块名。[3] 问题:交叉编译make: *** 没有指明目标并且找不到 makefile。 停止 回答: 这个错误通常是由于没有指定目标和找不到Makefile文件导致的。在使用make命令时,需要指定要执行的目标,例如"make all"或"make clean"。如果没有指定目标,make命令会报错并停止执行。另外,如果当前目录下没有找到Makefile文件,也会导致这个错误。请确保在执行make命令时指定了正确的目标,并且当前目录下存在Makefile文件。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值