Works fine here!

After I removed the manual override of the plugin lifecycle settings, restart, 
& maven update, TIKA built successfully. So the setting in Parent POM is enough.
I will update the forbidden-apis documentation to help others, too.

Uwe

-----
Uwe Schindler
H.-H.-Meier-Allee 63, D-28213 Bremen
http://www.thetaphi.de
eMail: u...@thetaphi.de


> -----Original Message-----
> From: Uwe Schindler [mailto:u...@thetaphi.de]
> Sent: Friday, January 23, 2015 9:08 PM
> To: dev@tika.apache.org
> Subject: RE: Forbidden-APIS no longer ran because of carzy POM change
> 
> Hi Timothy,
> 
> Your commit looks fine. Basically, this <pluginManagement> section is just
> containing some "fake" plugin that is never actively executed, but used by
> Eclipse to detect which plugins map to internal lifecycles of the Eclipse 
> IDE. It
> uses this to map for example how to execute the "compile" maven plugin
> inside Eclipse (use ECJ compiler) or let the surefire plugin map to the 
> internal
> Eclipse test runner.
> 
> Our addition through the parent POM just tells eclipse how to map the
> forbidden-apis plugin: To *nothing*, just ignore it inside the Eclipse IDE.
> 
> I will try it with Eclipse later, to make sure all is fine. But looks good to 
> me. I
> have not yet tried the setup with parent POMs, but I assume this should be
> fine.
> 
> Uwe
> 
> -----
> Uwe Schindler
> H.-H.-Meier-Allee 63, D-28213 Bremen
> http://www.thetaphi.de
> eMail: u...@thetaphi.de
> 
> 
> > -----Original Message-----
> > From: Allison, Timothy B. [mailto:talli...@mitre.org]
> > Sent: Friday, January 23, 2015 8:35 PM
> > To: dev@tika.apache.org
> > Subject: RE: Forbidden-APIS no longer ran because of carzy POM change
> >
> > Uwe,
> >   To confirm, we need to add this
> > <pluginManagement>...</pluginManagement> fully as it is in the parent
> > pom.xml, we should not put the plugin under our regular plugins (which
> > no longer have <pluginManagement>?
> >
> > -----Original Message-----
> > From: Uwe Schindler [mailto:u...@thetaphi.de]
> > Sent: Friday, January 23, 2015 11:47 AM
> > To: dev@tika.apache.org
> > Subject: RE: Forbidden-APIS no longer ran because of carzy POM change
> >
> > Hi,
> >
> > I did further investigation. I had the plugin disabled in my eclipse
> > (you can do this in quick fix for the whole workspace). In fact, if
> > you remove the disable thing, it fails also in Eclipse Luna.
> >
> > If we want to make the plugin automatically "hidden" to all Eclipse
> > versions through our own POM file - this is what the quick fix also
> > allows to do for the current project:
> >
> >     <pluginManagement>
> >             <plugins>
> >                     <!--This plugin's configuration is used to store 
> > Eclipse m2e
> > settings only. It has no influence on the Maven build itself.-->
> >                     <plugin>
> >                             <groupId>org.eclipse.m2e</groupId>
> >                             <artifactId>lifecycle-mapping</artifactId>
> >                             <version>1.0.0</version>
> >                             <configuration>
> >                                     <lifecycleMappingMetadata>
> >                                             <pluginExecutions>
> >                                                     <pluginExecution>
> >
> >     <pluginExecutionFilter>
> >
> >     <groupId>de.thetaphi</groupId>
> >
> >     <artifactId>forbiddenapis</artifactId>
> >
> >     <versionRange>[1.0,)</versionRange>
> >                                                                     <goals>
> >
> >     <goal>check</goal>
> >
> >     <goal>testCheck</goal>
> >                                                                     </goals>
> >
> >     </pluginExecutionFilter>
> >                                                             <action>
> >                                                                     
> > <ignore/>
> >                                                             </action>
> >                                                     </pluginExecution>
> >                                             </pluginExecutions>
> >                                     </lifecycleMappingMetadata>
> >                             </configuration>
> >                     </plugin>
> >             </plugins>
> >     </pluginManagement>
> >
> > This can be put in to tika-parent's POM.
> >
> > -----
> > Uwe Schindler
> > H.-H.-Meier-Allee 63, D-28213 Bremen
> > http://www.thetaphi.de
> > eMail: u...@thetaphi.de
> >
> >
> > > -----Original Message-----
> > > From: Uwe Schindler [mailto:u...@thetaphi.de]
> > > Sent: Friday, January 23, 2015 5:18 PM
> > > To: dev@tika.apache.org
> > > Subject: RE: Forbidden-APIS no longer ran because of carzy POM
> > > change
> > >
> > > Hi, this may also help, it also brings the needed information:
> > >
> > > https://www.eclipse.org/m2e/documentation/m2e-execution-not-
> > > covered.html
> > >
> > > In fact the problem is: Eclipse has no idea how this plugin should
> > > be executed internally in Eclipse. But as this is just a "check plugin"
> > > that does not affect the build output at all, you can leave it disabled.
> > >
> > > If you scroll down, you see that Eclipse 4.2+ fixes this problem:
> > > Disable the plugin for Maven using Project properties -> Maven ->
> > > Lifecycle mappings -> ignore
> > >
> > > -----
> > > Uwe Schindler
> > > H.-H.-Meier-Allee 63, D-28213 Bremen http://www.thetaphi.de
> > > eMail: u...@thetaphi.de
> > >
> > >
> > > > -----Original Message-----
> > > > From: Mattmann, Chris A (3980)
> > > > [mailto:chris.a.mattm...@jpl.nasa.gov]
> > > > Sent: Friday, January 23, 2015 4:13 PM
> > > > To: dev@tika.apache.org
> > > > Subject: Re: Forbidden-APIS no longer ran because of carzy POM
> > > > change
> > > >
> > > > Hi Uwe,
> > > >
> > > > Thanks. I will check it out. Like I said, I’m not OK reverting
> > > > anything if my Eclipse keeps complaining at me so we’ll need a fix
> > > > that handles both. Let me try with the latest version of Eclipse and
> > > > m2e and see if (with your patch) the issue goes away.
> > > >
> > > > Cheers,
> > > > Chris
> > > >
> > > >
> > >
> >
> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
> > > > ++++++++
> > > > Chris Mattmann, Ph.D.
> > > > Chief Architect
> > > > Instrument Software and Science Data Systems Section (398) NASA Jet
> > > > Propulsion Laboratory Pasadena, CA 91109 USA
> > > > Office: 168-519, Mailstop: 168-527
> > > > Email: chris.a.mattm...@nasa.gov
> > > > WWW:  http://sunset.usc.edu/~mattmann/
> > > >
> > >
> >
> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
> > > > ++++++++
> > > > Adjunct Associate Professor, Computer Science Department University
> > > > of Southern California, Los Angeles, CA 90089 USA
> > > >
> > >
> >
> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
> > > > ++++++++
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > > > -----Original Message-----
> > > > From: Uwe Schindler <u...@thetaphi.de>
> > > > Reply-To: "dev@tika.apache.org" <dev@tika.apache.org>
> > > > Date: Friday, January 23, 2015 at 3:59 AM
> > > > To: "dev@tika.apache.org" <dev@tika.apache.org>
> > > > Subject: RE: Forbidden-APIS no longer ran because of carzy POM
> > > > change
> > > >
> > > > >Here ist he explanation why the plugin is no longer called because
> > > > >of
> > > > >this:
> > > > >
> > > > >- Works for me too, but can anyone explain why? –  Andrew Swan
> May
> > > > >15
> > > > '13
> > > > >at 6:26
> > > > >- @Andrew I think this works because m2e is not looking for plugins
> > > > >in pluginManagement, but only in build/plugins. In the Maven world,
> > > > >there is a difference between the two - the former defines "if you
> > > > >happen to use this plugin, here's the configuration to use",
> > > > >whereas the latter states "use this plugin". See this post and its
> > > > >top two answers. – GreenGiant Jul 5 '13 at 17:52
> > > > >- I agree with @GreenGiant. I tried this solution but it then
> > > > >breaks the compilation since the aspectj plugin is not called
> > > > >before compilation. – Pierre Aug 30 '13 at 20:21
> > > > >
> > > > >This explains the change. In fact placing the plugins in
> > > > >pluginManagements disables them unless explicitely configured in a
> > > > >sub-module. So this commit should be reverted.
> > > > >
> > > > >
> > > > >In fact the bug described here no longer applies to later M2E
> > > > >installations. It still complains about plugins that Eclipse does
> > > > >not know about, but this does not prevent you from using Eclipse.
> > > > >So I would strongly ask to revert the commit because it breaks the
> build.
> > > > >
> > > > >Uwe
> > > > >
> > > > >-----
> > > > >Uwe Schindler
> > > > >H.-H.-Meier-Allee 63, D-28213 Bremen http://www.thetaphi.de
> > > > >eMail: u...@thetaphi.de
> > > > >
> > > > >
> > > > >> -----Original Message-----
> > > > >> From: Uwe Schindler [mailto:u...@thetaphi.de]
> > > > >> Sent: Friday, January 23, 2015 12:11 PM
> > > > >> To: dev@tika.apache.org
> > > > >> Subject: Forbidden-APIS no longer ran because of carzy POM change
> > > > >>
> > > > >> Hi,
> > > > >>
> > > > >> I just noticed while checking the problems around the
> > > > >>ExternalParsers that  the TIKA's build no longer runs the
> > > > >>forbidden-apis Maven plugin, so we got a  few new violation
> > > > >>especially regarding the toUpper/LowerCase(). In fact the
> > > > >>following
> > > commit broke this:
> > > > >>
> > > > >> Revision: 1624185
> > > > >> Author: mattmann
> > > > >> Date: Donnerstag, 11. September 2014 05:11:19
> > > > >> Message:
> > > > >> surround in plugin management to resolve
> > > > >> http://stackoverflow.com/questions/6352208/how-to-solve-plugin-
> > > > >> execution-not-covered-by-lifecycle-configuration-for-sprin
> > > > >> ----
> > > > >> Modified : /tika/trunk/tika-parent/pom.xml
> > > > >>
> > > > >> Since that change, the plugin is no longer run by default. I have
> > > > >>no idea, why  this is like this, but in fact this broke some of
> > > > >>the globally defined check tasks.
> > > > >> I have no idea how to reenable it easily.
> > > > >> So I cannot help, but reverting that commit restores behavior.
> > > > >>What is the  reason for this commit, there is not even an issue about
> > that.
> > > > >>I think it seems  to be a workaround for some Eclipse issue, but
> > > > >>in fact this disables the whole  plugins. To reenable
> > > > >>forbidden-apis you have to now explicitely enable it in  every
> > > > >>module (because pluginManagement just gives the config of a
> > > > >>plugin,  where without that it also enables its execution.
> > > > >>
> > > > >> In addition, there is already version 1.7 of forbiddenapis, so
> > > > >>you can replace
> > > > >> 1.6.1 of forbidden-apis with version 1.7 (which fixes a few bugs
> > > > >>with Java 8  and Java 9).
> > > > >>
> > > > >> The following new violations were found -> and in fact those
> > > > >>broke code in  turkish locale:
> > > > >> [INFO]
> > > > >>------------------------------------------------------------------
> > > > >>--
> > > > >>--
> > > > >>--  [INFO] Building Apache Tika core 1.8-SNAPSHOT [INFO]
> > > > >>--------------------------
> > > > >> ----------------------------------------------
> > > > >> [INFO]
> > > > >> [INFO] --- forbiddenapis:1.7:testCheck (default) @ tika-core ---
> > > > >>[INFO]  Scanning for classes to check...
> > > > >> [INFO] Reading bundled API signatures: jdk-unsafe [INFO] Reading
> > > > >>bundled  API signatures: jdk-deprecated [INFO] Loading classes to
> > > check...
> > > > >> [INFO] Scanning for API signatures and dependencies...
> > > > >> [ERROR] Forbidden method invocation:
> > > > >>java.lang.String#toLowerCase() [Uses default locale]
> > > > >> [ERROR]   in org.apache.tika.sax.BasicContentHandlerFactoryTest
> > > > >> (BasicContentHandlerFactoryTest.java:79)
> > > > >> [ERROR] Forbidden method invocation:
> > > > >>java.lang.String#toLowerCase() [Uses default locale]
> > > > >> [ERROR]   in org.apache.tika.sax.BasicContentHandlerFactoryTest
> > > > >> (BasicContentHandlerFactoryTest.java:80)
> > > > >> [ERROR] Forbidden method invocation:
> > > > >>java.lang.String#toLowerCase() [Uses default locale]
> > > > >> [ERROR]   in org.apache.tika.sax.BasicContentHandlerFactoryTest
> > > > >> (BasicContentHandlerFactoryTest.java:88)
> > > > >> [ERROR] Forbidden method invocation:
> > > > >>java.lang.String#toLowerCase() [Uses default locale]
> > > > >> [ERROR]   in org.apache.tika.sax.BasicContentHandlerFactoryTest
> > > > >> (BasicContentHandlerFactoryTest.java:133)
> > > > >> [ERROR] Forbidden method invocation:
> > > > >>java.lang.String#toLowerCase() [Uses default locale]
> > > > >> [ERROR]   in org.apache.tika.sax.BasicContentHandlerFactoryTest
> > > > >> (BasicContentHandlerFactoryTest.java:176)
> > > > >> [ERROR] Forbidden method invocation:
> > > > >>java.lang.String#toLowerCase() [Uses default locale]
> > > > >> [ERROR]   in org.apache.tika.sax.BasicContentHandlerFactoryTest
> > > > >> (BasicContentHandlerFactoryTest.java:221)
> > > > >> [ERROR] Forbidden method invocation:
> > > > >>java.lang.String#toLowerCase() [Uses default locale]
> > > > >> [ERROR]   in org.apache.tika.sax.BasicContentHandlerFactoryTest
> > > > >> (BasicContentHandlerFactoryTest.java:273)
> > > > >> [ERROR] Scanned 52 (and 331 related) class file(s) for forbidden
> > > > >>API invocations (in 0.16s), 7 error(s).
> > > > >> [INFO]
> > > > >>------------------------------------------------------------------
> > > > >>--
> > > > >>--
> > > > >>--
> > > > >> [...]
> > > > >> [INFO]
> > > > >>------------------------------------------------------------------
> > > > >>--
> > > > >>--
> > > > >>--  [INFO] Building Apache Tika parsers 1.8-SNAPSHOT [INFO]
> > > > >>----------------------
> > > > >> --------------------------------------------------
> > > > >> [INFO]
> > > > >> [INFO] --- forbiddenapis:1.7:check (default-cli) @ tika-parsers
> > > > >>--- [INFO]  Scanning for classes to check...
> > > > >> [INFO] Reading bundled API signatures: jdk-unsafe [INFO] Reading
> > > > >>bundled  API signatures: jdk-deprecated [INFO] Loading classes to
> > > check...
> > > > >> [INFO] Scanning for API signatures and dependencies...
> > > > >> [ERROR] Forbidden method invocation:
> > > > >> java.io.InputStreamReader#<init>(java.io.InputStream) [Uses
> > > > >>default charset]
> > > > >> [ERROR]   in org.apache.tika.parser.ocr.TesseractOCRParser$2
> > > > >> (TesseractOCRParser.java:309)
> > > > >> [ERROR] Forbidden method invocation:
> > > > >>java.lang.String#<init>(byte[],int,int)
> > > > >> [Uses default charset]
> > > > >> [ERROR]   in
> > > org.apache.tika.parser.chm.accessor.ChmDirectoryListingSet
> > > > >> (ChmDirectoryListingSet.java:240)  [ERROR] Forbidden method
> > > > >>invocation:
> > > > >> java.text.SimpleDateFormat#<init>(java.lang.String) [Uses default
> > > > >>locale]
> > > > >> [ERROR]   in
> > > > >>
> org.apache.tika.parser.image.ImageMetadataExtractor$ExifHandler$1
> > > > >> (ImageMetadataExtractor.java:304)  [ERROR] Forbidden method
> > > > >>invocation:
> > > > >> java.lang.String#format(java.lang.String,java.lang.Object[])
> > > > >>[Uses default  locale]
> > > > >> [ERROR]   in org.apache.tika.parser.ocr.TesseractOCRConfig
> > > > >> (TesseractOCRConfig.java:214)
> > > > >> [ERROR] Scanned 281 (and 813 related) class file(s) for forbidden
> > > > >>API invocations (in 0.38s), 4 error(s).
> > > > >>
> > > > >> Uwe
> > > > >>
> > > > >> -----
> > > > >> Uwe Schindler
> > > > >> H.-H.-Meier-Allee 63, D-28213 Bremen http://www.thetaphi.de
> > > > >> eMail: u...@thetaphi.de
> > > > >
> > > > >
> >


Reply via email to