Как я могу импортировать библиотеки локально, не используя Nexus в Maven? - PullRequest
1 голос
/ 16 октября 2019

Nexus, на который ссылается мой проект Maven, расположен на другом сервере, который имеет некоторые ограничения. Проблема в том, что мне нужно импортировать некоторые библиотеки Java в мой проект, которые Nexus не может загрузить из-за его ограничений. Моя цель - импортировать эти библиотеки локально и, таким образом, избегать использования Nexus. Если кто-нибудь знает какую-либо альтернативу, я открыт для новых предложений.

Моя единственная попытка состояла в том, чтобы импортировать эти библиотеки, используя Maven, который, в свою очередь, использует Nexus этих серверов, но это невозможно, поскольку они имеют определенные сетевые ограничения. ,Эти библиотеки:

     import oracle.xml.parser.schema.*;
     import oracle.xml.parser.v2.*;

Но что я пытаюсь?

Я предоставляю функцию проверки файлов XML с использованием схем XSD. Но когда вызывается функция, она выдает ошибку, потому что импорт библиотек не разрешен.

import oracle.xml.parser.schema.*;
import oracle.xml.parser.v2.*;

import java.net.*;
import java.io.*;
import org.w3c.dom.*;
import java.util.*;
import java.sql.SQLException;

/**
*
* Clase de utilidad para el tratamiento de XML.
* class SIXUtil 
* author Ibermática
* date Diciembre 2008
*
*/

public class SIXUtil
{
   public static String validarXmlSchema(oracle.sql.CLOB xml, 
   oracle.sql.CLOB xsd) throws Exception 
   {
     XSDBuilder builder = new XSDBuilder();

     XMLSchema schemadoc = 
     (XMLSchema)builder.build(xsd.getAsciiStream(),null);      

     DOMParser dp  = new DOMParser();
     dp.setXMLSchema(schemadoc);
     dp.setValidationMode(XMLParser.SCHEMA_VALIDATION);
     dp.setPreserveWhitespace (true);      

     StringWriter sw = new StringWriter();
     dp.setErrorStream (new PrintWriter(sw));      

     try 
     {
       dp.parse (xml.getAsciiStream());
     }
     catch (XMLParseException pe) 
     {
       sw.write(pe.getMessage());
     }
     catch (Exception e) 
     { 
       sw.write("Error inesperado: " + e.getMessage()); 
     }

       return sw.toString();      
     }
  }
  /

Я ожидаю импортировать библиотеки, локально созданные с использованием Nexus.

1 Ответ

0 голосов
/ 16 октября 2019

Вы можете использовать эти jar-файлы, поместив их в папку lib проекта и сконфигурировав их как системную зависимость

<dependency>
  <groupId>com.ext</groupId>
  <artifactId>dependency</artifactId>
  <scope>system</scope>
  <version>1.0</version>
  <systemPath>${basedir}\war\WEB-INF\lib\extDependency.jar</systemPath>
</dependency>
...