I wonder if it is possible to integrate an old version of a Camel component, with an application of a newer Apache Camel version. In my case I want to integrate to Hbase server version 1.2, that is supported only with HBase client 1.2. Therefore even though I want to use a 3.1 Camel version, I want to use the 3.0.1 version of Camel-HBase component. Is it a fine thing to do?
Or is there any place that I can see the versions of the libraries Apache Camel supports?
You can check the Camel dependencies POM to find the versions of dependencies that are imported by the different components.
See the dependencies POM of Camel 3.10.x. You will find <hbase-version>2.3.1</hbase-version>
in it.
Another source is Maven Central where you can see the dependency versions of a specific Camel component version.
See Camel-HBase 3.1.0 that references Hbase-client 1.2.6.
However, normally one cannot choose the Camel version to match a specific component dependency version. In general it is the other way round. You want or have to work with an already existing version or you want to use a current version to get the best of the framework.
If you build a new application with Camel 3.10.x, you get the hbase-client in version 2.3.1.
If newer Hbase client versions are not compatible with Hbase 1.2 it becomes difficult.
The only solution I see would be to isolate the Hbase integration in its own (freezed) application with an older Camel version that matches your desired Hbase-client version.