eclipse "एपीआर आधारित अपाचे टॉमकैट मूल पुस्तकालय" नहीं मिला "क्या?




tomcat apr (8)

जब तक आप एक उत्पादन सर्वर नहीं चला रहे हैं, इस संदेश के बारे में चिंता न करें। यह एक पुस्तकालय है जिसका उपयोग प्रदर्शन (उत्पादन प्रणाली पर) में सुधार के लिए किया जाता है। टोमाकैट के लिए अपाचे पोर्टेबल रनटाइम (एपीआर) आधारित मूल पुस्तकालय से :

टोमकैट अपाचे पोर्टेबल रनटाइम का उपयोग बेहतर स्केलेबिलिटी, प्रदर्शन और देशी सर्वर प्रौद्योगिकियों के साथ बेहतर एकीकरण प्रदान करने के लिए कर सकता है। अपाचे पोर्टेबल रनटाइम एक अत्यधिक पोर्टेबल लाइब्रेरी है जो अपाचे HTTP सर्वर 2.x के केंद्र में है। एपीआर में उन्नत आईओ कार्यक्षमता (जैसे सेंडफाइल, एपोल और ओपनएसएसएल), ओएस स्तर की कार्यक्षमता (यादृच्छिक संख्या पीढ़ी, सिस्टम स्थिति, आदि), और मूल प्रक्रिया हैंडलिंग (साझा स्मृति, एनटी पाइप और यूनिक्स सॉकेट) तक पहुंच सहित कई उपयोग हैं।

मैं विंडोज़ पर एक्लिप्स में टॉमकैट 7 का उपयोग कर रहा हूं। टॉमकैट शुरू करते समय, मुझे निम्न जानकारी संदेश मिल रहा है:

एपीआर आधारित अपाचे टॉमकैट मूल पुस्तकालय जो उत्पादन वातावरण में इष्टतम प्रदर्शन की अनुमति देता है java.library.path पर नहीं मिला था

इसका क्या अर्थ है और मैं एपीआर पुस्तकालय कैसे प्रदान कर सकता हूं?


इसका मतलब यह है कि यह वास्तव में क्या कहता है: "एपीआर आधारित अपाचे टॉमकैट मूल पुस्तकालय जो उत्पादन वातावरण में इष्टतम प्रदर्शन की अनुमति देता है java.library.path पर नहीं मिला"

संदर्भित पुस्तकालय जेएनआई के माध्यम से लोड ओएस विशिष्ट डीएलएल (टीसीएनटी-1. डीएल) में बंडल किया गया है। यह टोमकैट को जावा रनटाइम (जैसे sendfile, epoll, OpenSSL, सिस्टम स्थिति इत्यादि) में प्रदान की गई ओएस कार्यक्षमताओं का उपयोग करने की अनुमति देता है। टॉमकैट इसके बिना ठीक चलाएगा, लेकिन कुछ उपयोग मामलों के लिए, यह देशी पुस्तकालयों के साथ तेजी से होगा।

यदि आप वास्तव में इसे चाहते हैं, तो tcnative-1.dll (या लिनक्स के लिए libtcnative.so ) डाउनलोड करें और इसे बिन फ़ोल्डर में डालें, और ग्रहण में टॉमकैट सर्वर की लॉन्च कॉन्फ़िगरेशन में सिस्टम प्रॉपर्टी जोड़ें।

 -Djava.library.path=c:\dev\tomcat\bin

आरएचईएल लिनक्स पर बस जारी करें:

yum install tomcat-native.x86_64 इंस्टॉल करें

/ नोट: आपके आर्किटेक्चर 64 बिट या 32 बिट पैकेज के आधार पर अलग-अलग एक्सटेंशन /

बस इतना ही। उसके बाद आप लॉग फ़ाइल में अगले सूचना संदेश में पाएंगे:

सूचना: एपीआर क्षमताओं: आईपीवी 6 [सच], sendfile [सच], फिल्टर [झूठी], यादृच्छिक [सच] स्वीकार करते हैं।

सभी परिचालन पहले से काफी तेज होंगे।


इस समस्या को भी था। यदि आपके पास पुस्तकालय हैं, लेकिन अभी भी यह त्रुटि है, तो यह एक कॉन्फ़िगरेशन त्रुटि हो सकती है। आपके server.xml में निम्न पंक्ति अनुपलब्ध हो सकती है:

 <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />

(वैकल्पिक रूप से, यह टिप्पणी की जा सकती है)। यह <Listener> , अन्य श्रोताओं की तरह शीर्ष-स्तर <Server> का बच्चा है।

<Listener> रेखा के बिना, एपीआर लाइब्रेरी को लोड करने का कोई प्रयास नहीं है, इसलिए LD_LIBRARY_PATH और -Djava.library.path= सेटिंग्स को अनदेखा किया जाता है।


मुझे वही समस्या थी जब टॉमसेट को कक्षा नहीं मिल सका। अन्य लॉग फ़ाइलों को देखने का प्रयास करें। कभी-कभी विभिन्न लॉग फ़ाइलों में कोई कक्षा def त्रुटि नहीं होती है:

  • tomcat8-stdout
  • tomcat8-stderr
  • स्थानीय होस्ट

यदि आपके पास टॉमकैट मूल पुस्तकालय नहीं है तो इसे इंस्टॉल करें:

sudo apt-libtcnative-1 स्थापित करें

और यदि यह अभी भी एक पुराना संस्करण इसके साथ अपग्रेड कर रहा है:

sudo apt- libtcnative-1 अपग्रेड प्राप्त करें


डेबियन 8 पर मैं libapr1-dev स्थापित करने के साथ इसे ठीक करता हूं:

apt-get install libtcnative-1 libapr1-dev

मैं बस इसके माध्यम से चला गया और इसे निम्नलिखित के साथ कॉन्फ़िगर किया:

उबंटू 16.04

टॉमकैट 8.5.9

Apache2.4.25

एपीआर 1.5.2

टॉमकैट-मूल 1.2.10

जावा 8

ये वे चरण हैं जिन्हें मैंने यहां पुरानी पोस्ट के आधार पर उपयोग किया था:

पैकेज स्थापित करे

sudo apt-get अद्यतन प्राप्त करें

sudo apt-libtcnative-1 स्थापित करें

सत्यापित करें कि ये संकुल अधिष्ठापित हैं

सुडो apt-get स्थापित करें

sudo apt-gcc स्थापित करें

sudo apt-get openssl इंस्टॉल करें

पैकेज स्थापित करे

sudo apt-libskl-dev स्थापित करें

अपाचे एपीआर स्थापित और संकलित करें

सीडी / ऑप्ट / टॉमकैट / बिन

sudo wget http://apache.mirror.anlx.net//apr/apr-1.5.2.tar.gz

sudo tar -xzvf apr-1.5.2.tar.gz

सीडी एपीआर-1.5.2

sudo ./configure

सुडो बनाओ

सुडो स्थापित करें

स्थापना की पुष्टि करें

सीडी / यूएसआर / स्थानीय / एपीआर / lib /

ls

आपको संकलित फ़ाइल को देखना चाहिए

libapr-1.la

टॉमकैट मूल स्रोत पैकेज को डाउनलोड और इंस्टॉल करें

सीडी / ऑप्ट / टॉमकैट / बिन

sudo wget https://archive.apache.org/dist/tomcat/tomcat-connectors/native/1.2.10/source/tomcat-native-1.2.10-src.tar.gz

sudo tar -xzvf tomcat-native-1.2.10-src.tar.gz

सीडी tomcat-native-1.2.10-src / native

JAVA_HOME सत्यापित करें

सुडो पिको ~ / .bashrc

निर्यात JAVA_HOME = / usr / lib / jvm / java-8-openjdk-amd64

स्रोत ~ / .bashrc

sudo ./configure --with-apr = / usr / local / apr --with-java-home = $ JAVA_HOME

सुडो बनाओ

सुडो स्थापित करें

निम्न पंक्ति के साथ /opt/tomcat/bin/setenv.sh फ़ाइल संपादित करें:

सुडो पिको /opt/tomcat/bin/setenv.sh

निर्यात LD_LIBRARY_PATH = '$ LD_LIBRARY_PATH: / usr / local / apr / lib'

टॉमकैट को पुनरारंभ करें

सुडो सेवा टोमकैट पुनरारंभ करें





apr