netbeans-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Emma Atkinson <emma.atkins...@gmail.com>
Subject Re: Netbeans ant build script not finding Log4j2 V2.11.1 module-info.class
Date Thu, 04 Oct 2018 09:55:45 GMT
Hey guys,
What a lovely surprise! I was just about to begin working out the command
line options.

I'll take a look at the pull request to see if I can learn something.

Thank you (Denk u wel)
Emma

On 08:11, Thu, 4 Oct 2018 Geertjan Wielenga,
<geertjan.wielenga@googlemail.com.invalid> wrote:

> https://github.com/apache/incubator-netbeans/pull/941
>
> We've identified the problem and done work on fixing it.
>
> Gj
>
> On Wed, Oct 3, 2018 at 1:55 PM Emma Atkinson <emma.atkinson2@gmail.com>
> wrote:
>
>> I will try without using Netbeans but I do not have time to work on this
>> until tomorrow.
>> Thank you for devoting your time to helping me solve this.
>>
>> Emma
>>
>>
>> On Wed, 3 Oct 2018 at 12:29, Geertjan Wielenga <
>> geertjan.wielenga@googlemail.com> wrote:
>>
>>> Well, I'd suggest to first get it to work without any tooling at all.
>>> I.e., forget NetBeans for the moment and use the command line to set up a
>>> simple Java 9 multi-release app that makes use of Log4J. Possibly the
>>> problem is with Log4J and that's what you can find out by creating such an
>>> application and for help you could join the Log4J mailing list. I.e., if
>>> something doesn't work outside NetBeans it won't work within NetBeans
>>> either.
>>>
>>> Gj
>>>
>>>
>>> On Wed, Oct 3, 2018 at 1:13 PM Emma Atkinson <emma.atkinson2@gmail.com>
>>> wrote:
>>>
>>>> Screenshot.png shows how I have set up Netbeans.  I think you can see
>>>> everything.
>>>>
>>>> I normally use the *import* org.apache.logging.log4j.Logger and
>>>> *import* org.apache.logging.log4j.LogManager.  The Log4j2
>>>> module-info.class file exports *org.apache.logging.log4j*.
>>>>
>>>> I have committed a version of the test case with the word logging
>>>> deleted.  And then returned it to what I think is correct in the subsequent
>>>> commit.
>>>> I have tried it every way, with and without the classpath entries. BTW
>>>> adding a jar to both the modulepath and classpath has been a bit hit and
>>>> miss (ignoring adding log4j-api.jar if it is already on the modulepath) so
>>>> I used a Library entry for the module path and explicitly added the jars
to
>>>> the classpath.
>>>>
>>>> Adding the classpath entries with
>>>> *import* org.apache.logging.log4j.Logger
>>>> *import* org.apache.logging.log4j.LogManager
>>>>
>>>> means the editor finds the classes Logger and LogManager as you would
>>>> expect.
>>>> The Compile File error message is that it cannot find the module
>>>> log4j.api.
>>>> https://github.com/cosmiczoo/Log4j2TestCase latest commit is as close
>>>> as I can get.
>>>>
>>>>
>>>> On Wed, 3 Oct 2018 at 11:15, Geertjan Wielenga
>>>> <geertjan.wielenga@googlemail.com.invalid> wrote:
>>>>
>>>>> I also see this on https://logging.apache.org/log4j/2.0/download.html:
>>>>>
>>>>> To use Log4j 2 in your application make sure that both the API and
>>>>> Core jars are in the application’s classpath. Add the dependencies
listed
>>>>> below to your classpath.
>>>>>
>>>>>
>>>>>    1. log4j-api-2.11.1.jar
>>>>>    2. log4j-core-2.11.1.jar
>>>>>
>>>>>
>>>>>
>>>>> In short, we need instructions for how exactly to set up the project
>>>>> to match the environment that you have.
>>>>>
>>>>> Gj
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> On Wed, Oct 3, 2018 at 12:11 PM Geertjan Wielenga <
>>>>> geertjan.wielenga@googlemail.com> wrote:
>>>>>
>>>>>> Shouldn't the import statements be this:
>>>>>>
>>>>>> import org.apache.log4j.LogManager;
>>>>>> import org.apache.log4j.Logger;
>>>>>>
>>>>>> ...and not this:
>>>>>>
>>>>>> import org.apache.logging.log4j.LogManager;
>>>>>> import org.apache.logging.log4j.Logger;
>>>>>>
>>>>>> ...if you're using log4j-1.2-api-2.11.1.jar?
>>>>>>
>>>>>> Gj
>>>>>>
>>>>>>
>>>>>> On Wed, Oct 3, 2018 at 11:56 AM Emma Atkinson <
>>>>>> emma.atkinson2@gmail.com> wrote:
>>>>>>
>>>>>>> I cannot find a way to make this work, I hope you can help. 
I
>>>>>>> should be happy to be pointed to an existing answer
>>>>>>>
>>>>>>> *The Problem*
>>>>>>> I have a very simple Java application demonstrating the problem
I am
>>>>>>> having with using the latest Log4j2 V2.11.1 as a module (log4j.api)
and
>>>>>>> building it in Netbeans.  The example compiles, builds and runs
when I use
>>>>>>> the classpath, but cannot compile the module-info.java file when
I use the
>>>>>>> modulepath. I have uploaded the code and Netbeans files at the
following
>>>>>>> link:
>>>>>>>
>>>>>>> https://github.com/cosmiczoo/Log4j2TestCase
>>>>>>>
>>>>>>> Log4j2 V2.11.1 is a Multi-release JAR (MR-JAR).  The
>>>>>>> module-info.class file is in log4j-api-2.11.1.jar under the folder
>>>>>>> META-INF/versions/9, which seems correct.
>>>>>>>
>>>>>>> The Netbeans editor can see the module log4j.api because it appears
>>>>>>> in the drop-down menu of completion suggestions and does not
have wiggly
>>>>>>> red line under it.  My simple test program has a module-info.java
file that
>>>>>>> requires log4j.api and nothing else.  This bit works as I would
expect.
>>>>>>>
>>>>>>>
>>>>>>> I have located an unanswered question on StackOverflow asking
a
>>>>>>> similar question
>>>>>>> https://stackoverflow.com/questions/50568139/netbeans-java-9-modules-log4j-2-11-module-not-found
>>>>>>>
>>>>>>>
>>>>>>> *To Reproduce My Test *
>>>>>>>
>>>>>>> I *Clean* the project.  It completes successfully.
>>>>>>> I then use a RMB option to *Compile File* the module-info.java
>>>>>>> file.
>>>>>>> This generates an error pointing to the line *requires log4j.api*
>>>>>>> in my module-info.java.
>>>>>>>
>>>>>>> <path-to>/Log4j2TestCase/src/module-info.java:7: error:
module not
>>>>>>> found: log4j.api
>>>>>>>     requires log4j.api;
>>>>>>> 1 error
>>>>>>> ZipFileIndex clearCache failed
>>>>>>> <path-to>/Log4j2TestCase/nbproject/build-impl.xml:1131:
The
>>>>>>> following error occurred while executing this line:
>>>>>>> <path-to>/Log4j2TestCase/nbproject/build-impl.xml:358:
Compile
>>>>>>> failed; see the compiler error output for details.
>>>>>>>     at org.apache.tools.ant.taskdefs.Javac.compile(Javac.java:1425)
>>>>>>>     at org.apache.tools.ant.taskdefs.Javac.execute(Javac.java:1133)
>>>>>>>     at
>>>>>>> org.netbeans.modules.java.source.ant.JavacTask.execute(JavacTask.java:120)
>>>>>>>     at
>>>>>>> org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)
>>>>>>>
>>>>>>> and so on.  Please let me know if you want more.
>>>>>>>
>>>>>>> I have tried building this program under JDK-9, JDK-10 and JDK-11.
>>>>>>> My Netbeans runs on JDK-10.  I am learning how to migrate to
modules by
>>>>>>> trial, error and reading.  I may have made an error, but if I
have, I don't
>>>>>>> know where.
>>>>>>>
>>>>>>> Thanks in anticipation
>>>>>>>
>>>>>>> Emma
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>

Mime
View raw message