《Java图像处理:基于OpenCV与JVM》 ——1.3 自动编译和运行代码

举报
华章计算机 发表于 2020/02/20 19:34:17 2020/02/20
【摘要】 本节书摘来自华章计算机《Java图像处理:基于OpenCV与JVM》 —— 书中第1章,第1.3节,作者是[法] 尼古拉斯·莫德奇克(Nicolas Modrzyk) ,魏 兰 潘婉琼 译 。

1.3 自动编译和运行代码

  问题定义

虽然lein命令非常通用,你可能还是想在后台启动你的程序,并且在更新代码的时候让你的代码自动运行。

  解决方法

Leiningen配有自动插件。启用后,该插件会监视文件模式的变化并触发命令。让我们来试试吧!

  工作原理

当你用jvm-opencv模板创建项目时(请参阅1.2节),你会注意到project.clj文件的内容略长于本书中显示的内容。它实际上看起来更像这样:

 image.png

 

多出来的两行被高亮显示出来。一行是项目元数据在:plugins部分增加了lein-auto的插件。

另一行(即:auto部分)定义要监视变化的文件模式,这里所有以Java结尾的文件的变化都会激活自动刷新的子命令。

回到命令行,现在我们将在通常的run命令前添加auto命令,你需要编写下面这样的命令:

 image.png

第一次运行它时,它将提供与之前相同的输出,但是会添加一些额外的行:

 image.png

不错,请注意,Leiningen命令尚未完成运行,它实际上是在监听文件的变化。

从现在开始,你可以随意修改HelloCv的Java代码中Mat对象的大小。将以下行

 image.png

替换为

 image.png

更新的代码表示Mat对象现在是5×5矩阵,每个像素仍然由一个字节的整数表示。

然后查看Leiningen命令所在的终端或控制台,你会看到以下正在更新的输出:

 image.png

注意这次打印出的Mat对象是由5行5列组成的。


【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。