<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: tLibraryLoad of Maven artifact with a `classifier` to resolve NoClassDefFoundError in Talend Studio</title>
    <link>https://community.qlik.com/t5/Talend-Studio/tLibraryLoad-of-Maven-artifact-with-a-classifier-to-resolve/m-p/2293397#M144621</link>
    <description>Hello, 
&lt;BR /&gt; 
&lt;BR /&gt;Regarding classifier, you should have a try with: 
&lt;BR /&gt;mvn:groupId/artifactId/version/type/classifier 
&lt;BR /&gt;(using the format from OPS4J Pax URL) 
&lt;BR /&gt; 
&lt;BR /&gt;Best would be to not have to modify any pom / assembly. 
&lt;BR /&gt;Indeed the tLibraryLoad should be able to setup this. (more easy on 7.1.1 than 7.0 here) 
&lt;BR /&gt; 
&lt;BR /&gt;Nicolas.</description>
    <pubDate>Mon, 11 Mar 2019 07:55:22 GMT</pubDate>
    <dc:creator>Anonymous</dc:creator>
    <dc:date>2019-03-11T07:55:22Z</dc:date>
    <item>
      <title>tLibraryLoad of Maven artifact with a `classifier` to resolve NoClassDefFoundError</title>
      <link>https://community.qlik.com/t5/Talend-Studio/tLibraryLoad-of-Maven-artifact-with-a-classifier-to-resolve/m-p/2293396#M144620</link>
      <description>&lt;P&gt;I'm trying to find a *single* location where I can configure a runtime classpath in Talend.&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;For standalone jobs I've been able to modify the `&lt;SPAN&gt;@3rdPartyLibIncludes@` section of the Maven assembly.xml (Project Settings &amp;gt; Maven &amp;gt; Standalone Job &amp;gt; Assembly) and then also updated the classpath in the .bat/.ps1/.sh scripts to include everything in the standalone zip's `lib` folder.&amp;nbsp; I've also modified the project's pom.xml to specify my external jar (a jar-with-dependencies) as a dependency of my Talend project.&lt;/SPAN&gt;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&lt;SPAN&gt;But this doesn't work when running jobs directly from Talend Studio itself.&amp;nbsp; In that case I get a NoClassDefFoundError:&lt;/SPAN&gt;&lt;/P&gt; 
&lt;P&gt;"Exception in thread "Thread-1" java.lang.NoClassDefFoundError: org/apache/logging/log4j/core/config/ConfigurationFactory"&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;So I modified my external code to build a jar-with-dependencies/uber-jar thinking that I could load that with a tLibraryLoad.&amp;nbsp; The problem is that tLibraryLoad expects a Maven URI of the form `mvn:&amp;lt;groupid&amp;gt;/&amp;lt;artifactId&amp;gt;/&amp;lt;version&amp;gt;/&amp;lt;type&amp;gt;` while Maven typically specifies its URIs with a different form `maven:&amp;lt;groupid&amp;gt;:&amp;lt;artifactId&amp;gt;:&amp;lt;type&amp;gt;:&amp;lt;classifier&amp;gt;:&amp;lt;version&amp;gt;`.&amp;nbsp; Note the inclusion of `&amp;lt;classifier&amp;gt;` in the second form (and colons in place of slashes).&amp;nbsp; In my case I need a "jar-with-dependencies" classifier.&amp;nbsp; How do I specify this in tLibraryLoad?&amp;nbsp; I already tried appending the &amp;lt;version-classifier&amp;gt; in place of the &amp;lt;version&amp;gt; string but this gives an error: "This jar is not installed in the artifact repository, [sic] please install it !"&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;Ideally I'd prefer the tLibraryLoad to simply use the JAR version I've specified in the project's pom as I've done in assembly.xml with the following include: `&lt;SPAN&gt;&amp;lt;include&amp;gt;&lt;/SPAN&gt;com.mygroupId:myArtifactId:jar:jar-with-dependencies&lt;SPAN&gt;&amp;lt;/include&amp;gt;` which uses a proper Maven URI and which doesn't require specific artifact version number.&amp;nbsp; Is this possible?&lt;/SPAN&gt;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sat, 16 Nov 2024 06:33:07 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/tLibraryLoad-of-Maven-artifact-with-a-classifier-to-resolve/m-p/2293396#M144620</guid>
      <dc:creator>fred271828</dc:creator>
      <dc:date>2024-11-16T06:33:07Z</dc:date>
    </item>
    <item>
      <title>Re: tLibraryLoad of Maven artifact with a `classifier` to resolve NoClassDefFoundError</title>
      <link>https://community.qlik.com/t5/Talend-Studio/tLibraryLoad-of-Maven-artifact-with-a-classifier-to-resolve/m-p/2293397#M144621</link>
      <description>Hello, 
&lt;BR /&gt; 
&lt;BR /&gt;Regarding classifier, you should have a try with: 
&lt;BR /&gt;mvn:groupId/artifactId/version/type/classifier 
&lt;BR /&gt;(using the format from OPS4J Pax URL) 
&lt;BR /&gt; 
&lt;BR /&gt;Best would be to not have to modify any pom / assembly. 
&lt;BR /&gt;Indeed the tLibraryLoad should be able to setup this. (more easy on 7.1.1 than 7.0 here) 
&lt;BR /&gt; 
&lt;BR /&gt;Nicolas.</description>
      <pubDate>Mon, 11 Mar 2019 07:55:22 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/tLibraryLoad-of-Maven-artifact-with-a-classifier-to-resolve/m-p/2293397#M144621</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2019-03-11T07:55:22Z</dc:date>
    </item>
  </channel>
</rss>

