首页 \ 问答 \ Apache Tomcat环境变量(Apache Tomcat Environment Variables)

Apache Tomcat环境变量(Apache Tomcat Environment Variables)

当我从我的IDE将我的.war文件部署到Tomcat时,我定义了:

-Dsolr.solr.home=/home/vicita/Desktop/lucene-solr/solr/solr_h 
-Dsolr.data.dir=/home/vicita/Desktop/lucene-solr/solr/solr_h/data

但是当我将它部署到远程机器时,我必须定义这些参数。 我遵循的书说我必须在xml文件中将其定义为$ TOMCAT_HOME / conf / Catalina / localhost:

<Context path="/solr" docBase="/usr/share/tomcat/webapps/solr.war" debug="0" crossContext="true">
    <Environment name="solr/home" type="java.lang.String" value="/usr/share/solr_h/" override="true"/>
</Context>

顺便一提:

/usr/share/solr_h 

是我应该提及的目录。 我想知道的第一件事我没有在这里定义像solr.solr.home这样的变量?

我的.war无法找到该文件夹​​并抛出错误的第二件事。 我试图创建setenv.sh并放入:

-Dsolr.solr.home=/usr/share/solr_h
-Dsolr.data.dir=/usr/share/solr_h/data

但是当Tomcat启动它时说:

/usr/share/tomcat/bin/setenv.sh: line 1: -Dsolr.solr.home=/usr/share/solr_h: No such file or directory
/usr/share/tomcat/bin/setenv.sh: line 2: -Dsolr.data.dir=/usr/share/solr_h/data: No such file or directory
Using CATALINA_BASE:   /usr/share/tomcat
Using CATALINA_HOME:   /usr/share/tomcat
Using CATALINA_TMPDIR: /usr/share/tomcat/temp
Using JRE_HOME:        /usr/java/default
Using CLASSPATH:       /usr/share/tomcat/bin/bootstrap.jar:/usr/share/tomcat/bin/tomcat-juli.jar

有什么想法来解决它吗?


When I deploy my .war file into Tomcat from my IDE I define that:

-Dsolr.solr.home=/home/vicita/Desktop/lucene-solr/solr/solr_h 
-Dsolr.data.dir=/home/vicita/Desktop/lucene-solr/solr/solr_h/data

However when I deploy it into a remote machine I have to define that parameters. The book that I follow says that I have to define that into $TOMCAT_HOME/conf/Catalina/localhost within an xml file:

<Context path="/solr" docBase="/usr/share/tomcat/webapps/solr.war" debug="0" crossContext="true">
    <Environment name="solr/home" type="java.lang.String" value="/usr/share/solr_h/" override="true"/>
</Context>

by the way:

/usr/share/solr_h 

is my directory that I should mention. The first thing that I want to know I didn't define a variable like solr.solr.home at here?

Second thing that my .war could not find that folder and throws error. I tried to create setenv.sh and put:

-Dsolr.solr.home=/usr/share/solr_h
-Dsolr.data.dir=/usr/share/solr_h/data

However when Tomcat starts it says:

/usr/share/tomcat/bin/setenv.sh: line 1: -Dsolr.solr.home=/usr/share/solr_h: No such file or directory
/usr/share/tomcat/bin/setenv.sh: line 2: -Dsolr.data.dir=/usr/share/solr_h/data: No such file or directory
Using CATALINA_BASE:   /usr/share/tomcat
Using CATALINA_HOME:   /usr/share/tomcat
Using CATALINA_TMPDIR: /usr/share/tomcat/temp
Using JRE_HOME:        /usr/java/default
Using CLASSPATH:       /usr/share/tomcat/bin/bootstrap.jar:/usr/share/tomcat/bin/tomcat-juli.jar

Any ideas to fix it?


原文:https://stackoverflow.com/questions/15626272
更新时间:2022-12-24 11:12

最满意答案

您需要实例化类本身,而不是InsertDB()方法。 您可以使用关键字new来实例化一个类。 您可以参考oracle / sun 文档的官方教程。

例:

Testingground myObject = new Testingground();
myObject.InsertDB(constants[i], variables[i], ticker[i], count);

方法也可以声明为static 。 在这种情况下,您可以直接引用它们,即。 Testingground.InsertDB(constants[i], variables[i], ticker[i], count); 没有构造该类的对象。

同样按照惯例,方法名称是驼峰式的。 在此处阅读有关Java命名约定的更多信息。


You need to instantiate the class itself, not the method InsertDB(). You instantiate a class by using the key word new. You can refer to the official tutorial on the oracle/sun docs.

Example:

Testingground myObject = new Testingground();
myObject.InsertDB(constants[i], variables[i], ticker[i], count);

Methods can also be declared as static. In that case you can reference them directly ie. Testingground.InsertDB(constants[i], variables[i], ticker[i], count); without constructing an object for that class.

Also by convention method names are camel cased. Read more about naming conventions in java here.

相关问答

更多

相关文章

更多

最新问答

更多
  • 您如何使用git diff文件,并将其应用于同一存储库的副本的本地分支?(How do you take a git diff file, and apply it to a local branch that is a copy of the same repository?)
  • 将长浮点值剪切为2个小数点并复制到字符数组(Cut Long Float Value to 2 decimal points and copy to Character Array)
  • OctoberCMS侧边栏不呈现(OctoberCMS Sidebar not rendering)
  • 页面加载后对象是否有资格进行垃圾回收?(Are objects eligible for garbage collection after the page loads?)
  • codeigniter中的语言不能按预期工作(language in codeigniter doesn' t work as expected)
  • 在计算机拍照在哪里进入
  • 使用cin.get()从c ++中的输入流中丢弃不需要的字符(Using cin.get() to discard unwanted characters from the input stream in c++)
  • No for循环将在for循环中运行。(No for loop will run inside for loop. Testing for primes)
  • 单页应用程序:页面重新加载(Single Page Application: page reload)
  • 在循环中选择具有相似模式的列名称(Selecting Column Name With Similar Pattern in a Loop)
  • System.StackOverflow错误(System.StackOverflow error)
  • KnockoutJS未在嵌套模板上应用beforeRemove和afterAdd(KnockoutJS not applying beforeRemove and afterAdd on nested templates)
  • 散列包括方法和/或嵌套属性(Hash include methods and/or nested attributes)
  • android - 如何避免使用Samsung RFS文件系统延迟/冻结?(android - how to avoid lag/freezes with Samsung RFS filesystem?)
  • TensorFlow:基于索引列表创建新张量(TensorFlow: Create a new tensor based on list of indices)
  • 企业安全培训的各项内容
  • 错误:RPC失败;(error: RPC failed; curl transfer closed with outstanding read data remaining)
  • C#类名中允许哪些字符?(What characters are allowed in C# class name?)
  • NumPy:将int64值存储在np.array中并使用dtype float64并将其转换回整数是否安全?(NumPy: Is it safe to store an int64 value in an np.array with dtype float64 and later convert it back to integer?)
  • 注销后如何隐藏导航portlet?(How to hide navigation portlet after logout?)
  • 将多个行和可变行移动到列(moving multiple and variable rows to columns)
  • 提交表单时忽略基础href,而不使用Javascript(ignore base href when submitting form, without using Javascript)
  • 对setOnInfoWindowClickListener的意图(Intent on setOnInfoWindowClickListener)
  • Angular $资源不会改变方法(Angular $resource doesn't change method)
  • 在Angular 5中不是一个函数(is not a function in Angular 5)
  • 如何配置Composite C1以将.m和桌面作为同一站点提供服务(How to configure Composite C1 to serve .m and desktop as the same site)
  • 不适用:悬停在悬停时:在元素之前[复制](Don't apply :hover when hovering on :before element [duplicate])
  • 常见的python rpc和cli接口(Common python rpc and cli interface)
  • Mysql DB单个字段匹配多个其他字段(Mysql DB single field matching to multiple other fields)
  • 产品页面上的Magento Up出售对齐问题(Magento Up sell alignment issue on the products page)