热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

ApacheCamelIntellijIDEA插件的工作已开始

仅仅因为圣诞节并不意味着骆驼停滞不前。在23日晚上,我花了一些时间进行研究,并开始研究IDEA的ApacheCamel插件的小原型。它已经存在了很长时间

仅仅因为圣诞节并不意味着骆驼停滞不前。

在23日晚上,我花了一些时间进行研究,并开始研究IDEA的Apache Camel插件的小原型。 它已经存在了很长时间。

原因是Apache Camel为目录提供了有关工具的大量有用信息。 该目录包含有关每个Camel组件,EIP,数据格式,语言等的所有小细节。

我一直希望有一个IDEA(如果可能的话,还有Eclipse)的小插件,以提供代码帮助来设置Camel端点-换句话说,要有ctrl +空格来显示可在任何给定的Camel端点上使用的Camel选项列表。

故事开始了……


因此,在漆黑的夜晚,我发现自己回到了Intellij IDEA插件领域。 自从我上次入侵IDEA插件以来已经有很长时间了。 这么多年前,我记不清了,但是大约是在2002年。我创建了一个名为Generate toString的小插件,它将为您的POJO类生成漂亮的toString方法,例如您可以生成equals / hashCode等。我维护了插件,并将其升级为较新的IDEA版本,这常常会破坏插件,或者他们已经移动/更改了API。 当时几乎没有文档记录插件API,而且编辑器本身也没有源代码,因此试图弄清楚如何使其再次工作或如何使用一些现有的IDEA对话框等都没有意思。但是最后还是有可能的,实际上我不得不使用Java Swing等来进行一些对话。该插件后来在Jetbrains上找到了一个新家,他们接管了该插件,并在IDEA中提供了该插件。 谢谢Jetbrains。 您是地球上最好的编辑器。


您可以在以下博客文章中阅读有关此故事的更多信息:

  • Intellij IDEA插件兼容性
  • 生成捆绑在IDEA 8中的toString()

快进到2016年,我回到了熟悉的水域,AST模型仍然命名为PsiSomething。

……故事结束了。

但是,做一个挂接到IDEA Java语言的插件花了一段时间才找出来,因为我走错了路,试图找到一个
关于智能完成的扩展点 。

因此,相反,我查看了一些现成的插件,可以找到它们的源代码,并最终找到了一个与Java语言挂钩的插件,这使我走上了正确的道路。

所以过了一会儿,我开始工作了,这真是令人惊奇地看到,智能完成建议列表包括给定组件的Camel端点选项。 在圣诞节的早晨,我入侵了一些黑客,并在第一条屏幕截图中发布了一条推文

今天在12月25日,我还有更多时间来完善代码并将其发布在github上。

我在github上创建了一个新项目,我们可以在其中破解代码,以使该插件很棒,很棒。 目的是将代码最终捐赠给Apache Camel。 但是现在我们可以将其分开,这样更容易,因为只有插件代码,而并非所有其他Camel源代码。

Github项目: https : //github.com/davsclaus/camel-idea-plugin

您可以在github页面上找到更多详细信息,其中包含有关如何尝试/运行和构建插件的说明。 还有一个问题跟踪器,其中包含我们需要处理的事情的票证。

欢迎任何人为该插件提供帮助。 遗憾的是,我目前没有太多时间来证明花几天时间在插件上进行黑客攻击,甚至认为这真的很有趣。 我必须集中精力完成《 骆驼在行动》第二版 。 我完成了微服务一章的工作已达到85%,然后在2017年初尽快完成另一章的工作。但是我也是一个人,希望获得一些有趣的黑客技术,所以我会不时地进行一些黑客研究。时间在插件上。

这本书是一个无耻的插件,在假期期间有40%的折扣代码。 折扣代码是camiach (“骆驼在行动”中获得40%的折扣,第二版,所有格式,有效期:2017年1月7日)

要结束此博客文章,请参见以下Camel IDEA插件的最新屏幕截图:

智能完成以显示可能的骆驼选项

该插件还支持值的智能补全,例如,基于枚举的选项显示了哪些选择(如果有默认值,则默认为哪个)

智能完成枚举值

参考: 我们的JCG合作伙伴 Claus Ibsen在Apache Camel博客的Claus Ibsen 上开始了Apache Camel Intellij IDEA插件的工作 。

翻译自: https://www.javacodegeeks.com/2016/12/work-started-apache-camel-intellij-idea-plugin.html



推荐阅读
  • Java程序设计第4周学习总结及注释应用的开发笔记
    本文由编程笔记#小编为大家整理,主要介绍了201521123087《Java程序设计》第4周学习总结相关的知识,包括注释的应用和使用类的注释与方法的注释进行注释的方法,并在Eclipse中查看。摘要内容大约为150字,提供了一定的参考价值。 ... [详细]
  • [大整数乘法] java代码实现
    本文介绍了使用java代码实现大整数乘法的过程,同时也涉及到大整数加法和大整数减法的计算方法。通过分治算法来提高计算效率,并对算法的时间复杂度进行了研究。详细代码实现请参考文章链接。 ... [详细]
  • 本文整理了Java面试中常见的问题及相关概念的解析,包括HashMap中为什么重写equals还要重写hashcode、map的分类和常见情况、final关键字的用法、Synchronized和lock的区别、volatile的介绍、Syncronized锁的作用、构造函数和构造函数重载的概念、方法覆盖和方法重载的区别、反射获取和设置对象私有字段的值的方法、通过反射创建对象的方式以及内部类的详解。 ... [详细]
  • Hibernate延迟加载深入分析-集合属性的延迟加载策略
    本文深入分析了Hibernate延迟加载的机制,特别是集合属性的延迟加载策略。通过延迟加载,可以降低系统的内存开销,提高Hibernate的运行性能。对于集合属性,推荐使用延迟加载策略,即在系统需要使用集合属性时才从数据库装载关联的数据,避免一次加载所有集合属性导致性能下降。 ... [详细]
  • Spring特性实现接口多类的动态调用详解
    本文详细介绍了如何使用Spring特性实现接口多类的动态调用。通过对Spring IoC容器的基础类BeanFactory和ApplicationContext的介绍,以及getBeansOfType方法的应用,解决了在实际工作中遇到的接口及多个实现类的问题。同时,文章还提到了SPI使用的不便之处,并介绍了借助ApplicationContext实现需求的方法。阅读本文,你将了解到Spring特性的实现原理和实际应用方式。 ... [详细]
  • 1,关于死锁的理解死锁,我们可以简单的理解为是两个线程同时使用同一资源,两个线程又得不到相应的资源而造成永无相互等待的情况。 2,模拟死锁背景介绍:我们创建一个朋友 ... [详细]
  • XML介绍与使用的概述及标签规则
    本文介绍了XML的基本概念和用途,包括XML的可扩展性和标签的自定义特性。同时还详细解释了XML标签的规则,包括标签的尖括号和合法标识符的组成,标签必须成对出现的原则以及特殊标签的使用方法。通过本文的阅读,读者可以对XML的基本知识有一个全面的了解。 ... [详细]
  • 本文详细介绍了在ASP.NET中获取插入记录的ID的几种方法,包括使用SCOPE_IDENTITY()和IDENT_CURRENT()函数,以及通过ExecuteReader方法执行SQL语句获取ID的步骤。同时,还提供了使用这些方法的示例代码和注意事项。对于需要获取表中最后一个插入操作所产生的ID或马上使用刚插入的新记录ID的开发者来说,本文提供了一些有用的技巧和建议。 ... [详细]
  • Java学习笔记之面向对象编程(OOP)
    本文介绍了Java学习笔记中的面向对象编程(OOP)内容,包括OOP的三大特性(封装、继承、多态)和五大原则(单一职责原则、开放封闭原则、里式替换原则、依赖倒置原则)。通过学习OOP,可以提高代码复用性、拓展性和安全性。 ... [详细]
  • Whatsthedifferencebetweento_aandto_ary?to_a和to_ary有什么区别? ... [详细]
  • Java太阳系小游戏分析和源码详解
    本文介绍了一个基于Java的太阳系小游戏的分析和源码详解。通过对面向对象的知识的学习和实践,作者实现了太阳系各行星绕太阳转的效果。文章详细介绍了游戏的设计思路和源码结构,包括工具类、常量、图片加载、面板等。通过这个小游戏的制作,读者可以巩固和应用所学的知识,如类的继承、方法的重载与重写、多态和封装等。 ... [详细]
  • 本文讨论了如何优化解决hdu 1003 java题目的动态规划方法,通过分析加法规则和最大和的性质,提出了一种优化的思路。具体方法是,当从1加到n为负时,即sum(1,n)sum(n,s),可以继续加法计算。同时,还考虑了两种特殊情况:都是负数的情况和有0的情况。最后,通过使用Scanner类来获取输入数据。 ... [详细]
  • 本文主要解析了Open judge C16H问题中涉及到的Magical Balls的快速幂和逆元算法,并给出了问题的解析和解决方法。详细介绍了问题的背景和规则,并给出了相应的算法解析和实现步骤。通过本文的解析,读者可以更好地理解和解决Open judge C16H问题中的Magical Balls部分。 ... [详细]
  • 知识图谱——机器大脑中的知识库
    本文介绍了知识图谱在机器大脑中的应用,以及搜索引擎在知识图谱方面的发展。以谷歌知识图谱为例,说明了知识图谱的智能化特点。通过搜索引擎用户可以获取更加智能化的答案,如搜索关键词"Marie Curie",会得到居里夫人的详细信息以及与之相关的历史人物。知识图谱的出现引起了搜索引擎行业的变革,不仅美国的微软必应,中国的百度、搜狗等搜索引擎公司也纷纷推出了自己的知识图谱。 ... [详细]
  • 开发笔记:spring boot项目打成war包部署到服务器的步骤与注意事项
    本文介绍了将spring boot项目打成war包并部署到服务器的步骤与注意事项。通过本文的学习,读者可以了解到如何将spring boot项目打包成war包,并成功地部署到服务器上。 ... [详细]
author-avatar
饮娃_456
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有