NOTICE: This version of the NSF Unidata web site (archive.unidata.ucar.edu) is no longer being updated.
Current content can be found at unidata.ucar.edu.

To learn about what's going on, see About the Archive Site.

[netcdf-java] Zarr(!) null pointer

I am again trying to use netcdf modules instead of netcdfAll.
I need to use modules because you have stopped producing netcdfAll for new
versions.
I am using the new v5.5.3.
I included the cdm-zarr module in my pom.xml file because I would like to
try it someday and because I want to include as many file-read options as
possible.
I checked: cdm-zarr-5.5.3.jar is in my /lib directory after Maven builds
the project.
mvn compile throws no errors.
mvn dependency:analyze throws no errors and says I'm not missing
dependencies, but that I have a few unreferenced classes (several are
netcdf-related).

Now, when I run my unit tests (which previously worked), this code

        String fileName = "/u00/data/viirs/MappedMonthly4km/m4.ncml";
        NetcdfFile nc = NetcdfDatasets.openDataset(fileName);

throws this exception:

Exception in thread "main" java.lang.NullPointerException: Cannot invoke
"String.contains(java.lang.CharSequence)" because "location" is null
        at
thredds.inventory.zarr.MFileZip$Provider.canProvide(MFileZip.java:200)
        at thredds.inventory.MFiles.create(MFiles.java:37)
        at ucar.nc2.internal.ncml.AggDataset.<init>(AggDataset.java:74)
        at
ucar.nc2.internal.ncml.Aggregation.makeDataset(Aggregation.java:453)
        at
ucar.nc2.internal.ncml.Aggregation.addExplicitDataset(Aggregation.java:136)
        at ucar.nc2.internal.ncml.NcmlReader.readAgg(NcmlReader.java:1476)
        at ucar.nc2.internal.ncml.NcmlReader.readNetcdf(NcmlReader.java:521)
        at ucar.nc2.internal.ncml.NcmlReader.readNcml(NcmlReader.java:478)
        at ucar.nc2.internal.ncml.NcmlReader.readNcml(NcmlReader.java:397)
        at
ucar.nc2.internal.ncml.NcmlNetcdfFileProvider.open(NcmlNetcdfFileProvider.java:24)
        at
ucar.nc2.dataset.NetcdfDatasets.openProtocolOrFile(NetcdfDatasets.java:431)
        at
ucar.nc2.dataset.NetcdfDatasets.openDataset(NetcdfDatasets.java:152)
        at
ucar.nc2.dataset.NetcdfDatasets.openDataset(NetcdfDatasets.java:135)
        at
ucar.nc2.dataset.NetcdfDatasets.openDataset(NetcdfDatasets.java:118)
        at
ucar.nc2.dataset.NetcdfDatasets.openDataset(NetcdfDatasets.java:104)

even though the file is an .ncml file (attached) which references 2 hdf
files
V20120012012031.L3m_MO_NPP_CHL_chlor_a_4km
V20120322012060.L3m_MO_NPP_CHL_chlor_a_4km
which are pretty big, but you can download from
https://coastwatch.pfeg.noaa.gov/erddap/files/testMediaFiles/ProbablyDoNotWork/

The error message isn't helpful.
Why am I getting this error message even though there are no Zarr files
involved?

Or, do you have a pom.xml which includes what used to be in netcdfAll?
Perhaps I am missing some low level artifact.
My pom.xml is attached if that is helpful.

Thank you for looking into this.

Attachment: m4.ncml
Description: Binary data

<?xml version="1.0" encoding="UTF-8"?>
<!-- 

This is how Bob uses Maven for ERDDAP. 
Maven users will probably be mystified/horrified, 
but it works for me and does what I need it to do: 
  identify and gather all needed .jar dependencies
since this is impossible for AWS S3 dependencies without Maven.

* One time: Make a new Maven project/archetype: 
  cd \programs\mavenERDDAP
  mvn -B archetype:generate -DgroupId=gov.noaa.pfel.erddap -DartifactId=ERDDAP 
-DarchetypeArtifactId=maven-archetype-quickstart -DarchetypeVersion=1.4

* Copy Java source files from Tomcat/webapps/cwexperimental to Maven:
    With bash:
      cd /c/content/bat
      ./synchToMaven.sh

* Update ERDDAP version number below in ...
   <version>2.19-SNAPSHOT</version>

* Update the version numbers starting with <plugins> section.
  Website to search for maven plugins and dependencies: 
https://mvnrepository.com/ 

* Compile in Maven and gather dependency .jar files
  (pom.xml based on Kyle's pom from 
https://github.com/axiom-data-science/erddap )

  From DOS command line (or Bash) (after synchToMaven.sh has copied source 
files to Maven dir):
      //mvn -help 
      //add -e for full error messages
      //add -X for debug messages
      cd \programs\mavenERDDAP\ERDDAP   //that's where pom.xml is
      set "JAVA_HOME=C:\programs\jdk-17.0.3+7"      
      mvn clean               //removes previously generated .class files and 
...
      mvn compile             //uses javac.  Identifies missing 
dependencies/.jars.  
      mvn dependency:analyze  //Identifies excess or missing dependencies/.jars.
                              //  Expected: 
                              //    WARNINGS for netcdf-java -related edu.ucar 
classes.
                              //    WARNINGS for Cassandra dependencies:
                              //      slf4j, guava, lz4, metrics, netty, snappy.
      mvn package             //Creates a war in 
\programs\mavenERDDAP\ERDDAP\target
      (then copy netcdfAll-x.x.x.jar into /lib)

   or: mvn clean install -U   //clears out cached information (more thoroughly 
than 'clean') and does it all?
   
* Temporarily rename tomcat/webapps/cwexperimental/WEB-INF/lib to today's date: 
/libYYYYMMDD

* Move all .jar files 
    from inside 
C:\programs\mavenERDDAP\ERDDAP\target\ERDDAP-...-SNAPSHOT\WEB-INF\lib directory
    to   tomcat/webapps/cwexperimental/WEB-INF/lib
    The vast majority of .jars are from the AWS S3 dependency.

* Run TestAll. If passes all tests, delete temporary libYYYYMMDD directory.

-->
<project xmlns="http://maven.apache.org/POM/4.0.0"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/xsd/maven-4.0.0.xsd";>
    <modelVersion>4.0.0</modelVersion>

    <groupId>gov.noaa.pfel.erddap</groupId>
    <artifactId>ERDDAP</artifactId>
    <version>2.19-SNAPSHOT</version>
    <packaging>war</packaging>

    <name>erddap</name>
    <url>https://coastwatch.pfeg.noaa.gov/erddap/index.html</url>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>

    <repositories>
        <!-- Published advice: 
https://docs.unidata.ucar.edu/netcdf-java/current/userguide/using_netcdf_java_artifacts.html
             Repository 
https://artifacts.unidata.ucar.edu/repository/unidata-all      (on web page)
                or      
https://artifacts.unidata.ucar.edu/repository/unidata-releases (privately)
              Browse either https://artifacts.unidata.ucar.edu/#browse/browse
             -->
        <repository>
            <id>unidata-all</id>   
            <name>UNIDATA All</name>
            
<url>https://artifacts.unidata.ucar.edu/repository/unidata-all/</url>
        </repository>
    </repositories>

    <build>
        <resources>
            <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.properties</include>
                    <include>**/*.csv</include>
                    <include>**/*.tsv</include>
                    <include>**/*.txt</include>
                    <include>**/*.cpt</include>
                    <include>**/*.xml</include>
                </includes>
            </resource>
        </resources>
        <plugins>
            <plugin>

                <!-- 
https://mvnrepository.com/artifact/org.apache.maven.plugins/maven-compiler-plugin
 -->
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.10.1</version>
                <configuration>
                    <failOnError>true</failOnError>
                    <source>17</source>   <!-- java version -->
                    <target>17</target>
                    <excludes>
                        
<exclude>gov/noaa/pfel/coastwatch/sgt/LandMask.javaINACTIVE</exclude>
                        
<exclude>gov/noaa/pfel/coastwatch/sgt/MapGraph.javaINACTIVE</exclude>
                        
<exclude>gov/noaa/pfel/coastwatch/sgt/MapProj.javaINACTIVE</exclude>
                        
<exclude>gov/noaa/pfel/coastwatch/sgt/GSHHSNewOnHold.java_NOT_YET</exclude>
                        
<exclude>gov/noaa/pfel/coastwatch/griddata/Grd.javaINACTIVE</exclude>
                        
<exclude>gov/noaa/pfel/coastwatch/griddata/GridDataSetCWOpendap.javaINACTIVE</exclude>
                        
<exclude>gov/noaa/pfel/coastwatch/griddata/GridDataSetPathfinder.javaINACTIVE</exclude>
                        
<exclude>gov/noaa/pfel/coastwatch/griddata/WriteShapefile.javaINACTIVE</exclude>
                        
<exclude>gov/noaa/pfel/coastwatch/pointdata/DigirIobisTDSP.javaINACTIVE</exclude>
                        
<exclude>gov/noaa/pfel/coastwatch/pointdata/DigirObisTDSP.javaINACTIVE</exclude>
                        
<exclude>gov/noaa/pfel/coastwatch/hdf/HdfWriter.javaINACTIVE</exclude>
                        
<exclude>gov/noaa/pfel/coastwatch/HelloWorld.javaINACTIVE</exclude>
                        
<exclude>gov/noaa/pfel/erddap/dataset/EDDTableFromBinaryFile.javaINACTIVE</exclude>
                        
<exclude>gov/noaa/pfel/erddap/dataset/EDDTableFromMatFiles.javaINACTIVE</exclude>
                        
<exclude>gov/noaa/pfel/erddap/dataset/EDDTableCopyPost.javaINACTIVE</exclude>
                        
<exclude>gov/noaa/pfel/erddap/dataset/EDDTableFromBMDE.javaINACTIVE</exclude>
                        
<exclude>gov/noaa/pfel/erddap/dataset/EDDTableFromMWFS.javaINACTIVE</exclude>
                        
<exclude>gov/noaa/pfel/erddap/dataset/EDDTableFromNOS.javaINACTIVE</exclude>
                        
<exclude>gov/noaa/pfel/erddap/dataset/EDDTableFromNcSequenceFiles.javaNOT_FINISHED</exclude>
                        
<exclude>gov/noaa/pfel/erddap/dataset/EDDTableFromNWISDV.javaINACTIVE</exclude>
                        
<exclude>gov/noaa/pfel/erddap/dataset/EDDTableFromPostDatabase.javaINACTIVE</exclude>
                        
<exclude>gov/noaa/pfel/erddap/dataset/EDDTableFromPostNcFiles.javaINACTIVE</exclude>
                        
                        
<exclude>gov/noaa/pfel/coastwatch/util/FileVisitorDNLS.javaOLD</exclude>

                    </excludes>
                </configuration>
            </plugin>

            <!-- 
https://mvnrepository.com/artifact/org.apache.maven.plugins/maven-war-plugin -->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-war-plugin</artifactId>
                <version>3.3.2</version>
            </plugin>

            <!-- ??? 2022-07-06 5.5.3 does have netcdfAll. WHAT IS 
REPLACEMENT???
              
https://mvnrepository.com/artifact/com.googlecode.maven-download-plugin/download-maven-plugin
              This approach is from Jennifer Oxelson. See 
https://github.com/oxelson/netcdfAll/blob/main/pom.xml 
              I think this isn't needed/doesn't work(?). 
              Instead, just download netcdfAll 
                from 
https://artifacts.unidata.ucar.edu/#browse/browse:downloads-netcdf-java
                to c:/programs/mavenERDDAP/ERDDAP/external_libs/
            - ->
            <plugin>
                <groupId>com.googlecode.maven-download-plugin</groupId>
                <artifactId>download-maven-plugin</artifactId>
                <version>1.6.8</version>
                <executions>
                    <execution>
                        <phase>validate</phase>
                        <goals>
                            <goal>wget</goal>
                        </goals>
                        <configuration>
                            
<url>https://artifacts.unidata.ucar.edu/repository/downloads-netcdf-java/5.5.2/netcdfAll-5.5.2.jar</url>
                            <outputFileName>netcdfAll-5.5.2.jar</outputFileName>
                            
<outputDirectory>${project.basedir}/external_libs</outputDirectory>
                        </configuration>
                    </execution>
                </executions>
            </plugin> -->
        </plugins>
        <pluginManagement>
          <plugins>
                <!-- 
https://mvnrepository.com/artifact/org.apache.maven.plugins/maven-resources-plugin
 -->
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-resources-plugin</artifactId>
                    <version>3.2.0</version>
                </plugin>
                <!-- 
https://mvnrepository.com/artifact/org.apache.maven.plugins/maven-dependency-plugin
 -->
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-dependency-plugin</artifactId>
                    <version>3.3.0</version>
                </plugin>
                <!-- 
https://mvnrepository.com/artifact/org.apache.maven.plugins/maven-surefire-plugin
 -->
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-surefire-plugin</artifactId>
                    <version>2.22.2</version>
                </plugin>
                <!-- 
https://mvnrepository.com/artifact/org.apache.maven.plugins/surefire-junit4 -->
                <plugin>
                    <groupId>org.apache.maven.surefire</groupId>
                    <artifactId>surefire-junit4</artifactId>
                    <version>2.19.1</version>
                </plugin>
                <!-- 
https://mvnrepository.com/artifact/org.codehaus.plexus/plexus-utils -->
                <plugin>
                    <groupId>org.codehaus.plexus</groupId>
                    <artifactId>plexus-utils</artifactId>
                    <version>3.4.2</version>
                </plugin>
            </plugins>
        </pluginManagement>
    </build>

    <dependencyManagement>
        <dependencies>

            <!-- https://mvnrepository.com/artifact/software.amazon.awssdk/bom 
                 Parent for reading/writing to AWS S3. -->
            <dependency>
              <groupId>software.amazon.awssdk</groupId>
              <artifactId>bom</artifactId>
              <version>2.17.224</version> <!-- and same number several places 
below -->
              <type>pom</type>
              <scope>import</scope>
            </dependency>
        </dependencies>

    </dependencyManagement>

    <dependencies>

        <!-- 
https://mvnrepository.com/artifact/jakarta.servlet/jakarta.servlet-api  -->
        <dependency>
            <groupId>jakarta.servlet</groupId>
            <artifactId>jakarta.servlet-api</artifactId>
            <version>6.0.0</version>
            <scope>provided</scope>
            <!-- Tomcat8 needed this. Tomcat10 doesn't allow it.
            <configuration>
                <port>8081</port>
                <path>/erddap</path>
            </configuration -->
        </dependency> 


        <!-- https://mvnrepository.com/artifact/junit/junit
             There are newer versions with different domain name, but cause 
trouble with dependency checking. 
             For testing (by Kyle? Maven?). -->
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.13.2</version>
            <scope>test</scope>
        </dependency>

        <!-- Kyle had this: 
             https://mvnrepository.com/artifact/org.apache.ant/ant 
        <dependency>
            <groupId>org.apache.ant</groupId>
            <artifactId>ant</artifactId>
            <version>1.10.9</version>
        </dependency>   -->


        <!-- https://mvnrepository.com/artifact/gnu-regexp/gnu-regexp
             This is needed for dods.dap code I wasn't compiling but Maven 
does.  
             'provided' lets it compile here but then doesn't include the .jar 
in /lib in .war.
             -->
        <dependency>
            <groupId>gnu-regexp</groupId>
            <artifactId>gnu-regexp</artifactId>
            <version>1.1.4</version>
            <scope>provided</scope>
        </dependency>

        <!-- https://mvnrepository.com/artifact/gnu.getopt/java-getopt
             This is needed for dods.dap code I wasn't compiling but Maven 
does.  
             'provided' lets it compile here but then doesn't include the .jar 
in /lib in .war.
              -->
        <dependency>
            <groupId>gnu.getopt</groupId>
            <artifactId>java-getopt</artifactId>
            <version>1.0.13</version>
            <scope>provided</scope>
        </dependency> 

        <!-- https://mvnrepository.com/artifact/com.lowagie/itext 
             This is the pdf writer.
             Newer version is available, but license now gpl! So stick to 1.3.1
             -->
        <dependency>
            <groupId>com.lowagie</groupId>
            <artifactId>itext</artifactId>
            <version>1.3.1</version>
        </dependency>

        <!-- Kyle had this: 
        <dependency>
            <groupId>wsdl4j</groupId>
            <artifactId>wsdl4j</artifactId>
            <version>1.6.3</version>
        </dependency-->

        <!-- https://mvnrepository.com/artifact/org.apache.lucene/lucene-core 
             The Lucene search option uses this. 
             2021-12-16 WARNING: Lucene 9.0.0 is available but requires Java 
11(?). -->
        <dependency>
            <groupId>org.apache.lucene</groupId>
            <artifactId>lucene-core</artifactId>
            <version>9.2.0</version>
        </dependency>

        <!-- 
https://mvnrepository.com/artifact/org.apache.lucene/lucene-queryparser 
             The Lucene search option uses this. -->
        <dependency>
            <groupId>org.apache.lucene</groupId>
            <artifactId>lucene-queryparser</artifactId>
            <version>9.2.0</version>
        </dependency>

        <!-- https://mvnrepository.com/artifact/org.json/json 
             This is the JSON reader. -->
        <dependency>
            <groupId>org.json</groupId>
            <artifactId>json</artifactId>
            <version>20220320</version>
        </dependency>

        <!-- I have private copy of source code in with my code.
             2020-12-21 I tried to remove my copy and use this, but failed.
             https://mvnrepository.com/artifact/org.jdom/jdom 
        <dependency>
            <groupId>org.jdom</groupId>
            <artifactId>jdom</artifactId>
            <version>2.0.2</version>
        </dependency-->

        <!-- Kyle had this: 
        <dependency>
            <groupId>org.apache.axis</groupId>
            <artifactId>axis</artifactId>
            <version>1.4</version>
        </dependency-->

        <!-- Kyle had this: 
        <dependency>
            <groupId>atg.taglib.json</groupId>
            <artifactId>json-taglib</artifactId>
            <version>0.4.1</version>
        </dependency-->

        <!-- https://mvnrepository.com/artifact/com.sun.mail/jakarta.mail 
             Used to send emails. -->
        <dependency>
            <groupId>com.sun.mail</groupId>
            <artifactId>jakarta.mail</artifactId>
            <version>2.0.1</version>
        </dependency>

        <!-- versions: 
https://mvnrepository.com/artifact/commons-codec/commons-codec
             dependency:analyze says it's needed. -->
        <dependency>
            <groupId>commons-codec</groupId>
            <artifactId>commons-codec</artifactId>
            <version>1.15</version>
        </dependency>

        <!-- 
https://mvnrepository.com/artifact/org.apache.commons/commons-compress 
             File2 and EDDTableFromNcFiles use this. -->
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-compress</artifactId>
            <version>1.21</version>
        </dependency>

        <!-- https://mvnrepository.com/artifact/commons-logging/commons-logging
             dependency:analyze says it's needed. 
             Maven says 1.2's dependencies have 4 vulnerabilities, but all are 
old log4j vulnerabilities,
               so ERDDAP admins shouldn't use old log4j (or any log4j). -->
        <dependency>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
            <version>1.2</version>
        </dependency>

        <!-- https://mvnrepository.com/artifact/jaxen/jaxen 
             org.jdom.xpath code uses this. -->
        <dependency>
            <groupId>jaxen</groupId>
            <artifactId>jaxen</artifactId>
            <version>1.2.0</version>
        </dependency>

        <!-- Published advice 
https://docs.unidata.ucar.edu/netcdf-java/current/userguide/using_netcdf_java_artifacts.html
 
           and Jan 24, 2022 email from Jennifer Oxelson Ganter
           and a set of runtime modules from 
https://docs.unidata.ucar.edu/netcdf-java/current/userguide/file_types.html 
          To figure out which module has a given class, Google, e.g.: github 
netcdf-java ucar nc2 geotiff GeotiffWriter 

          Browse repository (probably unidata-all): 
https://artifacts.unidata.ucar.edu/#browse/browse
          -->

        <!-- Version options: 
https://artifacts.unidata.ucar.edu/#browse/browse:unidata-all:edu%2Fucar%2Fbufr 
-->
        <dependency>
            <groupId>edu.ucar</groupId>
            <artifactId>bufr</artifactId>
            <version>5.5.3</version>  <!-- this number duplicated many times 
below -->
            <scope>runtime</scope>  
        </dependency>
        <!-- Version options: 
https://artifacts.unidata.ucar.edu/#browse/browse:unidata-all:edu%2Fucar%2Fcdm-core
  
             Fundamental! 
             Has ucar.nc2.Variable and Variable.Builder (and other builders).
             Has ucar.nc2.ncml.NcmlReader, Aggregation, AggregationExisting, 
AggregationFmrc, AggregationOuterDimension, 
               AggregationUnion, etc-->
        <dependency>
            <groupId>edu.ucar</groupId>
            <artifactId>cdm-core</artifactId>
            <version>5.5.3</version>
            <scope>compile</scope>
        </dependency>
        <!-- Version options: 
https://artifacts.unidata.ucar.edu/#browse/browse:unidata-all:edu%2Fucar%2Fcdm-image
  -->
        <dependency>
            <groupId>edu.ucar</groupId>
            <artifactId>cdm-image</artifactId>
            <version>5.5.3</version>
            <scope>runtime</scope>
        </dependency>
       <!-- Version options: 
https://artifacts.unidata.ucar.edu/#browse/browse:unidata-all:edu%2Fucar%2Fcdm-mcidas
  -->
        <dependency>
            <groupId>edu.ucar</groupId>
            <artifactId>cdm-mcidas</artifactId>
            <version>5.5.3</version>
            <scope>runtime</scope>
        </dependency>
        <!-- Version options: 
https://artifacts.unidata.ucar.edu/#browse/browse:unidata-all:edu%2Fucar%2Fcdm-misc
  
             Has ucar.nc2.geotiff. -->
        <dependency>
            <groupId>edu.ucar</groupId>
            <artifactId>cdm-misc</artifactId> 
            <version>5.5.3</version>
            <scope>compile</scope>  
        </dependency>
        <!-- Version options: 
https://artifacts.unidata.ucar.edu/#browse/browse:unidata-all:edu%2Fucar%2Fcdm-radial
  
             probably not needed-->
        <dependency>
            <groupId>edu.ucar</groupId>
            <artifactId>cdm-radial</artifactId>
            <version>5.5.3</version>
            <scope>runtime</scope>
        </dependency>
        <!-- Version options: 
https://artifacts.unidata.ucar.edu/#browse/browse:unidata-all:edu%2Fucar%2Fcdm-vis5d
  -->
        <dependency>
            <groupId>edu.ucar</groupId>
            <artifactId>cdm-vis5d</artifactId>
            <version>5.5.3</version>
            <scope>runtime</scope>
        </dependency>
        <!-- Version options: 
https://artifacts.unidata.ucar.edu/#browse/browse:unidata-all:edu%2Fucar%2Fcdm-zarr
  -->
        <dependency>
            <groupId>edu.ucar</groupId>
            <artifactId>cdm-zarr</artifactId>
            <version>5.5.3</version>
            <scope>runtime</scope>
        </dependency> 
        <!-- Version options: 
https://artifacts.unidata.ucar.edu/#browse/browse:unidata-all:edu%2Fucar%2Fclcommon
 
             Referenced in Jennifer's email. Has ucar.nc2.dt.image... and some 
ucar.nc2.iosp... 
             But I distrust artifacts with version=5.1.0. - ->
        <dependency>
            <groupId>edu.ucar</groupId>
            <artifactId>clcommon</artifactId>
            <version>5.1.0</version>
            <scope>compile</scope>
        </dependency> -->
        <!-- d4* is probably dap4: not needed -->        
        <!-- Version options: 
https://artifacts.unidata.ucar.edu/#browse/browse:unidata-all:edu%2Fucar%2Fgrib 
 -->
        <dependency>
            <groupId>edu.ucar</groupId>
            <artifactId>grib</artifactId>
            <version>5.5.3</version>
            <scope>runtime</scope>
        </dependency>
        <!-- Version options: 
https://artifacts.unidata.ucar.edu/#browse/browse:unidata-all:edu%2Fucar%2Fhttpservices
  -->
        <dependency>
            <groupId>edu.ucar</groupId>
            <artifactId>httpservices</artifactId>
            <version>5.5.3</version>
            <scope>compile</scope>
        </dependency>
        <!-- Version options: 
https://artifacts.unidata.ucar.edu/#browse/browse:unidata-all:edu%2Fucar%2Flegacy
  -->
        <dependency>
            <groupId>edu.ucar</groupId>
            <artifactId>legacy</artifactId>
            <version>5.5.3</version>
            <scope>compile</scope>
        </dependency>
        <!-- Version options: 
https://artifacts.unidata.ucar.edu/#browse/browse:unidata-all:edu%2Fucar%2Fnetcdf
  doesn't have 5.x -->
        <!-- Version options: 
https://artifacts.unidata.ucar.edu/#browse/browse:unidata-all:edu%2Fucar%2Fnetcdf-java
  doesn't have 5.5.3+ -->
        <!-- Version options: 
https://artifacts.unidata.ucar.edu/#browse/browse:unidata-all:edu%2Fucar%2Fnetcdf4
 
             This is for writing netcdf4 files with linked C library. -->
        <dependency>
            <groupId>edu.ucar</groupId>
            <artifactId>netcdf4</artifactId>
            <version>5.5.3</version>
            <scope>runtime</scope>
        </dependency> 
        <!-- Version options: 
https://artifacts.unidata.ucar.edu/#browse/browse:unidata-all:edu%2Fucar%2Fopendap
  -->
        <dependency>
            <groupId>edu.ucar</groupId>
            <artifactId>opendap</artifactId>
            <version>5.5.3</version>
            <scope>compile</scope>
        </dependency>
        <!-- Version options: 
https://artifacts.unidata.ucar.edu/#browse/browse:unidata-all:edu%2Fucar%2Fudunits
 
             Marked as needed by dependency:analyze -->
        <dependency>
            <groupId>edu.ucar</groupId>
            <artifactId>udunits</artifactId>
            <version>5.5.3</version>
            <scope>compile</scope> 
        </dependency>
        <!-- Version options: 
https://artifacts.unidata.ucar.edu/#browse/browse:unidata-all:edu%2Fwisc%2Fssec%2Fvisad
  
             Marked as needed by dependency:analyze -->
        <dependency>
            <groupId>edu.wisc.ssec</groupId>
            <artifactId>visad</artifactId>
            <version>2.0-20191209</version>
            <scope>runtime</scope>
        </dependency>


        <!-- https://mvnrepository.com/artifact/org.slf4j/slf4j-simple
             2021-12-21: I think it is needed.
             WAS: NO LONGER NEEDED! It's in netcdf-all.jar  
             and something else gets slf4j-api-...jar -->
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-simple</artifactId>
            <version>1.7.36</version>
            <scope>runtime</scope>
        </dependency>

        <!-- 
https://mvnrepository.com/artifact/org.apache.commons/commons-jexl3 
             This is the expression parser/processor used by EDDTableFromFiles 
Derived Variables. -->
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-jexl3</artifactId>
            <version>3.2.1</version>
        </dependency>

        <!-- https://mvnrepository.com/artifact/org.postgresql/postgresql 
             Postgresql users use this. I include for their convenience. -->
        <dependency>
            <groupId>org.postgresql</groupId>
            <artifactId>postgresql</artifactId>
            <version>42.4.0</version>
        </dependency>



        <!-- CASSANDRA 
             
https://mvnrepository.com/artifact/com.datastax.cassandra/cassandra-driver-core 
             Cassandra uses this. -->
        <dependency>
            <groupId>com.datastax.cassandra</groupId>
            <artifactId>cassandra-driver-core</artifactId>
            <version>3.11.2</version>
        </dependency>

        <!-- https://mvnrepository.com/artifact/com.google.guava/guava 
             Cassandra driver uses this. -->
        <dependency>
            <groupId>com.google.guava</groupId>
            <artifactId>guava</artifactId>
            <version>31.1-jre</version>
        </dependency>

        <!-- https://mvnrepository.com/artifact/net.jpountz.lz4/lz4 
             Cassandra uses this. C* still refers to this older version from 
older domain. -->
        <dependency>
            <groupId>net.jpountz.lz4</groupId>
            <artifactId>lz4</artifactId>
            <version>1.3.0</version>
        </dependency>

        <!-- 
https://mvnrepository.com/artifact/io.dropwizard.metrics/metrics-core 
             Cassandra uses this.  -->
        <dependency>
            <groupId>io.dropwizard.metrics</groupId>
            <artifactId>metrics-core</artifactId>
            <version>4.2.10</version>
        </dependency>

        <!-- https://mvnrepository.com/artifact/io.netty/netty-all 
             Cassandra uses this. -->
        <dependency>
            <groupId>io.netty</groupId>
            <artifactId>netty-all</artifactId>
            <version>4.1.78.Final</version>
        </dependency>

        <!-- https://mvnrepository.com/artifact/org.xerial.snappy/snappy-java 
             Cassandra uses this. -->
        <dependency>
            <groupId>org.xerial.snappy</groupId>
            <artifactId>snappy-java</artifactId>
            <version>1.1.8.4</version>
        </dependency>

        <!-- 
https://mvnrepository.com/artifact/io.dropwizard.metrics/metrics-jmx 
            2021-01-25 Tried: To deal with java.lang.NoClassDefFoundError: 
com/codahale/metrics/JmxReporter
            But now "metrics" option is always set to false.
            See EDDTableFromCassandra references to JmxReporter.
            See 
https://docs.datastax.com/en/developer/java-driver/3.5/manual/metrics/#metrics-4-compatibility
            
            and need for Cluster.builder().withoutJMXReporting()
            which is probably a workable solution.           
        <dependency>
            <groupId>io.dropwizard.metrics</groupId>
            <artifactId>metrics-jmx</artifactId>
            <version>4.2.5</version>
        </dependency -->


        <!-- AWS
             https://mvnrepository.com/artifact/software.amazon.awssdk/s3 
             This is the core AWS SDK code. 
             See awssdk/bom in <dependencyManagement> section above. -->
        <dependency>
          <groupId>software.amazon.awssdk</groupId>
          <artifactId>s3</artifactId>
          <version>2.17.224</version>
        </dependency>

        <!-- https://mvnrepository.com/artifact/software.amazon.awssdk/regions 
            This is the AWS code for Regions. -->
        <dependency>
            <groupId>software.amazon.awssdk</groupId>
            <artifactId>regions</artifactId>
            <version>2.17.224</version>
        </dependency>

        <!-- 
https://mvnrepository.com/artifact/software.amazon.awssdk/s3-transfer-manager
            This is the AWS code for TransferManager. -->      
        <dependency>
            <groupId>software.amazon.awssdk</groupId>
            <artifactId>s3-transfer-manager</artifactId>
            <version>2.17.224-PREVIEW</version>
        </dependency>


        <!-- 
https://mvnrepository.com/artifact/com.google.cloud/google-cloud-translate -->
        <!-- Added by Qi for translation purpose -->
        <!-- WARNING:
             2022-02-07 2.1.10 caused a timeout error. Revert to 2.1.7 again.
             2021-12-22 2.1.8 caused:   Exception in thread 
"grpc-default-executor-0" java.lang.NoSuchMethodError: 
             
com.google.protobuf.GeneratedMessageV3.isStringEmpty(Ljava/lang/Object;)Z
             so revert to 2.1.7 for now -->
        <dependency>
            <groupId>com.google.cloud</groupId>
            <artifactId>google-cloud-translate</artifactId>
            <version>2.3.0</version>
        </dependency>

        <!-- 
https://mvnrepository.com/artifact/com.google.api.grpc/proto-google-cloud-translate-v3
 -->
        <!-- Added by Bob for translation project -->
        <!-- WARNING:
             2022-02-07 2.1.10 caused a timeout error. Revert to 2.1.7 again.
             2021-12-22 2.1.8 caused:   Exception in thread 
"grpc-default-executor-0" java.lang.NoSuchMethodError: 
             
com.google.protobuf.GeneratedMessageV3.isStringEmpty(Ljava/lang/Object;)Z
             so revert to 2.1.7 for now -->
        <dependency>
            <groupId>com.google.api.grpc</groupId>
            <artifactId>proto-google-cloud-translate-v3</artifactId>
            <version>2.3.0</version>
        </dependency>
        <!-- 
https://mvnrepository.com/artifact/com.google.auth/google-auth-library-oauth2-http
 -->
        <dependency>
            <groupId>com.google.auth</groupId>
            <artifactId>google-auth-library-oauth2-http</artifactId>
            <version>1.8.0</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/com.google.api/gax -->
        <dependency>
            <groupId>com.google.api</groupId>
            <artifactId>gax</artifactId>
            <version>2.18.3</version>
        </dependency>

    </dependencies>
</project>
  • 2022 messages navigation, sorted by:
    1. Thread
    2. Subject
    3. Author
    4. Date
    5. ↑ Table Of Contents
  • Search the netcdf-java archives: