Author Archives: hedleyproctor

Introduction to Claude Code

Claude Code is a software development agent which runs on your local machine. My experience is that when people first start using Claude Code, they have a bad experience with it, as it can be too easy to assume that … Continue reading

Posted in AI, Claude Code | Tagged , | Leave a comment

Gradle properties

Using properties in Gradle can be confusing for a newcomer, because there are different sorts of properties, and some complexities in how they apply to a Gradle build. Firstly, we can use three different types of property: Gradle properties – … Continue reading

Posted in Gradle | Leave a comment

Improving Java build speed with Develocity

We have recently started using the Develocity tool for our builds. I really love it. It is a build acceleration tool made by the company who create Gradle. It was previously called Gradle Enterprise, but has been renamed to make … Continue reading

Posted in Gradle, Java | Leave a comment

CXF Restful web server example

I’ve created an example of how to use Apache CXF and Spring together to create a restful web service: https://github.com/hedleyproctor/cxf-restful-server-example This example shows the key steps in creating a restful web server: Create a rest service interface class which you … Continue reading

Posted in CXF, Java | Tagged , | Leave a comment

IntelliJ Plugin Development Cookbook

This post is intended to help people writing IntelliJ plugins, with a focus on plugins for Java projects. Although the IntelliJ docs are pretty good, this post collects together lots of small “how to” instructions that I’ve found useful when … Continue reading

Posted in IntelliJ, Java, Uncategorized | Tagged , | Leave a comment

Gradle dependencies tutorial

Gradle has very powerful dependency management features. In this tutorial I will walk through creating a multi module Java project, and explain: How the api and implementation dependencies work How to create a custom dependency resolution strategy to: Hard fail … Continue reading

Posted in Gradle, Java | Tagged , | Leave a comment

Gradle – working with files

When working with files in Gradle, the key classes are: FileCollection FileTree – which extends FileCollection Getting a FileCollection You can get a file collection by using the files() method which is always available (from the Project object). FileCollection myFiles … Continue reading

Posted in Gradle, Java | Tagged , | Leave a comment

Debugging Gradle

If you are new to any tool or technology, knowing how to debug when things go wrong is a really important skill. This post gives some beginner tips on how to debug Gradle builds. Note: In the commands below, I’m … Continue reading

Posted in Gradle, Java | Tagged , | Leave a comment

Error handling in Apache Camel

Scenarios When coding an integration with Apache Camel, we need to be able to deal with many different kinds of error: Bug / error in our own code, before we have communicated with the remote service. Getting a connection to … Continue reading

Posted in Camel, Java | Tagged , | Leave a comment

Gradle incremental tasks and builds

One of the things that makes a build efficient is when it can run incrementally. i.e. If you have already run one build, and you change things and run another, the second build should only have to rerun some tasks … Continue reading

Posted in Gradle, Java | Tagged | Leave a comment