Skip to main content
AI
  • Get started with AI

    • Red Hat AI

      Accelerate the development and deployment of enterprise AI solutions.

    • AI learning hub

      Explore learning materials and tools, organized by task.

    • AI interactive demos

      Click through scenarios with Red Hat AI, including training LLMs and more.

    • AI/ML learning paths

      Expand your Red Hat OpenShift AI knowledge using these learning resources.

    • AI quickstarts

      Focused AI use cases designed for fast deployment on Red Hat AI platforms.

    • No-cost AI training

      Foundational Red Hat AI training.

  • Featured resources

    • Red Hat OpenShift AI
    • Open source AI for developers
    • AI product application development
    • Open source-powered AI/ML for hybrid cloud
    • AI and Node.js cheat sheet

Red Hat AI Factory with NVIDIA

Red Hat AI Factory with NVIDIA is a co-engineered, enterprise-grade AI solution for building, deploying, and managing AI at scale across hybrid cloud environments.

Learn
  • Self-guided

    • Documentation

      Find answers, get step-by-step guidance, and learn how to use Red Hat products.

    • Learning paths

      Explore curated walkthroughs for common development tasks.

    • Guided learning

      Receive custom learning paths powered by our AI assistant.

    • See all learning
  • Hands-on

    • Developer Sandbox

      Spin up Red Hat's products and technologies without setup or configuration.

    • Interactive labs

      Learn by doing in these hands-on, browser-based experiences.

    • Interactive demos

      Click through product features in these guided tours.

  • Browse by topic

    • AI/ML
    • Automation
    • Java
    • Kubernetes
    • Linux
    • See all topics
  • Training & certifications

    • Courses and exams
    • Certifications
    • Skills assessments
    • Red Hat Academy
    • Learning subscription
    • Explore training
Build
  • Get started

    • Red Hat build of Podman Desktop

      A downloadable, local development hub to experiment with our products and builds.

    • Developer Sandbox

      Spin up Red Hat's products and technologies without setup or configuration.

  • Download products

    • Red Hat Enterprise Linux
    • Red Hat AI
    • Red Hat OpenShift
    • Red Hat Ansible Automation Platform
    • See all products
  • Featured

    • Red Hat build of OpenJDK
    • Red Hat JBoss Enterprise Application Platform
    • Red Hat OpenShift Dev Spaces
    • Red Hat Developer Toolset
  • References

    • E-books
    • Documentation
    • Cheat sheets
    • Architecture center
Community
  • Get involved

    • Events
    • Live AI events
    • Red Hat Summit
    • Red Hat Accelerators
    • Community discussions
  • Follow along

    • Articles & blogs
    • Developer newsletter
    • Videos
    • Github
  • Get help

    • Customer service
    • Customer support
    • Regional contacts
    • Find a partner

Join the Red Hat Developer program

Download Red Hat products and project builds, access support documentation, learning content, and more.

ConsoleDocsSupport Search
New For you

Recommended

We'll recommend resources you may like as you browse. Try these suggestions for now.

  • Product downloads
  • Cheat sheets
  • Red Hat Developer learning portal
  • Developer blog
  • E-books
  • Developer Sandbox
Log in

Get more with a Red Hat Developer account

  • Product downloads
  • Console access
  • Event registration
  • Training & trials
Explore more account benefitsLog in or register

A subscription may be required for some services.

Contact us

Migrating from Fabric8 Maven Plugin to Eclipse JKube 1.0.0

September 21, 2020
Rohan Kumar
Related topics:
JavaContainersDeveloper toolsDevOpsKubernetes

    The recent release of Eclipse JKube 1.0.0 means that the Fabric8 Maven Plugin is no longer supported. If you are currently using the Fabric8 Maven Plugin, this article provides instructions for migrating to JKube instead. I will also explain the relationship between Eclipse JKube and the Fabric8 Maven Plugin (they're the same thing) and introduce the highlights of the new Eclipse JKube 1.0.0 release. These migration instructions are for developers working on the Kubernetes and Red Hat OpenShift platforms.

    Eclipse JKube is the Fabric8 Maven Plugin

    Eclipse JKube and the Fabric8 Maven Plugin are one and the same. Eclipse JKube was first released in 2014 under the name of Fabric8 Maven Plugin. The development team changed the name when we pre-released Eclipse JKube 0.1.0 in December 2019. For more about the name change, see my recent introduction to Eclipse JKube. This article focuses on the migration path to JKube 1.0.0.

    What's new in Eclipse JKube 1.0.0

    If you are hesitant about migrating to JKube, the following highlights from the new 1.0.0 release might change your mind:

    • Targeted migration with the new Kubernetes Maven Plugin and OpenShift Maven Plugin.
    • Improved base images based on Red Hat Universal Base Images (UBI) and JDK 11. (Fabric8 Maven Plugin's images are based on JDK 8.)
    • No coupling to the fabric8.io platform.
    • Source-to-Image (S2I) support for web applications and Quarkus.
    • Better support for containerizing your applications with JIB integration.
    • Helm support in the Kubernetes Maven Plugin and OpenShift Maven Plugin.
    • Based on JKube Kit, which is independent of both Maven and Gradle.
    • Support for Podman and Buildah is coming soon in Eclipse JKube 1.1.0.

    Fabric8 Maven Plugin generates both Kubernetes and Red Hat OpenShift artifacts, and it automatically detects and deploys resources to the underlying cluster. But developers who use Kubernetes don't need OpenShift artifacts, and OpenShift developers don't need Kubernetes manifests. We addressed this issue by splitting Fabric8 Maven Plugin into two plugins for Eclipse JKube: Kubernetes Maven Plugin and OpenShift Maven Plugin.

    Eclipse JKube migration made easy

    Eclipse JKube has a migrate goal that automatically updates Fabric8 Maven Plugin references in your pom.xml to the Kubernetes Maven Plugin or OpenShift Maven Plugin. In the next sections, I'll show you how to migrate a Fabric8 Maven Plugin-based project to either platform.

    Replace the code for the Fabric8 Maven plugin with either the code for the Kubernetes Maven plugin or the OpenShft Maven plugin.

    For demonstration purposes, we can use my old random generator application, which displays a random JSON response at a /random endpoint. To start, clone this repository:

    $ git clone https://github.com/rohanKanojia/fmp-demo-project.git
    cd fmp-demo-project
    

    Then build the project:

    $ mvn clean install
    

    Eclipse JKube migration for Kubernetes users

    Use the following goal to migrate to Eclipse JKube's Kubernetes Maven Plugin. Note that we have to specify a complete artifactId and groupId because the plugin is not automatically included in the pom.xml:

    $ mvn org.eclipse.jkube:kubernetes-maven-plugin:migrate
    

    Here are the logs for the migrate goal:

    fmp-demo-project : $ mvn org.eclipse.jkube:kubernetes-maven-plugin:migrate
    [INFO] Scanning for projects...
    [INFO]
    [INFO] ----------------------< meetup:random-generator >-----------------------
    [INFO] Building random-generator 0.0.1
    [INFO] --------------------------------[ jar ]---------------------------------
    [INFO]
    [INFO] --- kubernetes-maven-plugin:1.0.0-rc-1:migrate (default-cli) @ random-generator ---
    [INFO] k8s: Found Fabric8 Maven Plugin in pom with version 4.4.1
    [INFO] k8s: Renamed src/main/fabric8 to src/main/jkube
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD SUCCESS
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time:  3.154 s
    [INFO] Finished at: 2020-09-08T19:32:01+05:30
    [INFO] ------------------------------------------------------------------------
    fmp-demo-project : $
    

    You'll notice that all of the Fabric8 Maven Plugin references have been replaced by references to Eclipse JKube. The Kubernetes Maven Plugin is the same as the Fabric8 Maven Plugin. The only differences are the k8s prefix and that it generates Kubernetes manifests.

    Once you've installed the Kubernetes Maven Plugin, you can deploy your application as usual:

    $ mvn k8s:build k8s:resource k8s:deploy
    

    Eclipse JKube migration for OpenShift users

    Use the same migration process for the OpenShift Maven Plugin as you would for the Kubernetes Maven Plugin. Run the migrate goal but with the OpenShift MavenPlugin specified:

    $ mvn org.eclipse.jkube:openshift-maven-plugin:migrate
    

    Here are the logs for this migrate goal:

    fmp-demo-project : $ mvn org.eclipse.jkube:openshift-maven-plugin:migrate
    [INFO] Scanning for projects...
    [INFO]
    [INFO] ----------------------< meetup:random-generator >-----------------------
    [INFO] Building random-generator 0.0.1
    [INFO] --------------------------------[ jar ]---------------------------------
    [INFO]
    [INFO] --- openshift-maven-plugin:1.0.0-rc-1:migrate (default-cli) @ random-generator ---
    [INFO] k8s: Found Fabric8 Maven Plugin in pom with version 4.4.1
    [INFO] k8s: Renamed src/main/fabric8 to src/main/jkube
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD SUCCESS
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time:  4.227 s
    [INFO] Finished at: 2020-09-08T19:41:34+05:30
    [INFO] ------------------------------------------------------------------------
    

    This goal replaces all of your Fabric8 Maven Plugin references with references to OpenShift Maven Plugin. You can then deploy your application to Red Hat OpenShift just as you normally would:

    $ mvn oc:build oc:resource oc:deploy
    

    Conclusion

    See the Eclipse JKube migration guide for more about migrating from the Fabric8 Maven Plugin on OpenShift or Kubernetes. Feel free to create a GitHub issue to report any problems that you encounter during the migration. We really value your feedback, so please report bugs, ask for improvements, and tell us about your migration experience.

    Whether you are already using Eclipse JKube or just curious about it, don't be shy about joining our welcoming community:

    • Provide feedback on GitHub.
    • Craft code and push a pull request to the Eclipse JKube repository.
    • Interact with the Eclipse JKube team on Gitter and the JKube mailing list.
    • Ask questions and get answers on Stack Overflow.
    Last updated: September 17, 2020

    Recent Posts

    • A day in the life of an NVIDIA H100 on Red Hat OpenShift 5

    • Migrate BuildConfigs to builds for Red Hat OpenShift with one plug-in install

    • Run Red Hat Enterprise Linux CoreOS on NVIDIA BlueField DPUs

    • Agent harness engineering: Separating model capabilities from enforcement

    • What's new for developers in Red Hat Enterprise Linux 10.3 and 9.9

    Red Hat Developers logo

    Platforms

    • Red Hat AI
    • Red Hat Enterprise Linux
    • Red Hat OpenShift
    • Red Hat Ansible Automation Platform
    • See all products

    Build

    • Developer Sandbox
    • Developer tools
    • Interactive tutorials
    • API catalog

    Quicklinks

    • Learning resources
    • E-books
    • Cheat sheets
    • Blog
    • Events
    • Newsletter

    Communicate

    • About us
    • Contact sales
    • Find a partner
    • Report a website issue
    • Site status dashboard
    • Report a security problem

    Red Hat Developer

    Build here. Go anywhere.

    We serve the builders. The problem solvers who create careers with code.

    Join us if you’re a developer, software engineer, web designer, front-end designer, UX designer, computer scientist, architect, tester, product manager, project manager or team lead.

    Sign me up

    Red Hat legal and privacy links

    • About Red Hat
    • Jobs
    • Events
    • Locations
    • Contact Red Hat
    • Red Hat Blog
    • Inclusion at Red Hat
    • Cool Stuff Store
    • Red Hat Summit
    © 2026 Red Hat

    Red Hat legal and privacy links

    • Privacy statement
    • Terms of use
    • All policies and guidelines
    • Digital accessibility
    Ask AI