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.wiele...@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.atkins...@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.wiele...@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.atkins...@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.wiele...@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.wiele...@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.atkins...@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 >>>>>>> >>>>>>> >>>>>>> >>>>>>>