我想在java中使用反射,我想做第三个类将从控制台读取类的名称作为String.在读取类的名称后,它将自动动态地(!)生成该类并调用其writeout方法.如果未从输入中读取该类,则不会对其进行初始化.
我写了那些代码,但我总是把它拿到" java.lang.ClassNotFoundException",我不知道如何修复它.谁能帮我?
class class3 {  
   public Object dynamicsinif(String className, String fieldName, String value) throws Exception
   {    
      Class cls = Class.forName(className,true,null);    
      Object obj = cls.newInstance();    
      Field fld = cls.getField(fieldName);    
      fld.set(obj, value);    
      return obj;    
  }
  public void writeout3()    
  {    
      System.out.println("class3");    
  }    
}
public class Main {        
    public static void main(String[] args) throws Exception    
    {            
           System.out.println("enter the class name : ");    
       BufferedReader reader= new BufferedReader(new InputStreamReader(System.in));
           String line=reader.readLine();    
           String x="Text1";    
           try{    
              class3 trycls=new class3();    
              Object gelen=trycls.dynamicsinif(line, x, "rubby");    
              Class …我编写了一个在Tomcat 6中部署的自定义MBean.其任务之一是查询数据库值.我这样做是通过使用JNDI加载数据库资源 - 资源是在Tomcat的server.xml中定义的.
问题是,当我创建javax.naming.InitialContext它的实例时会抛出一个ClassNotFoundException无法找到的实例org.apache.naming.java.javaURLContextFactory.该类catalina.jar由公共类加载器加载并加载.包含我的MBean代码的jar由共享类加载器加载.
关于如何解决这个问题的任何想法?
要注意:我的MBean是由我在其中定义的ContextListener加载的tomcat/conf/web.xml.我也在一个webapp中定义它web.xml没有任何区别.我无法真正移动我的jar以便由公共类加载器加载,因为它依赖于共享类加载器加载的类.
提前致谢,
将
我有一个活动,我有一个广播接收器(br).如果我以编程方式注册br,则接收器已注册并且工作正常.
但是,如果我在清单中注册接收器,我会收到java.lang.ClassNotFoundException.
<receiver             
        android:name=".MyActivity.UpdateUIClass"
        android:exported="false"
        >
        <intent-filter>
            <action android:name="com.mydomain.main.FILTER_UPDATE_UI" />
            <category android:name="android.intent.category.DEFAULT" />                
        </intent-filter>
    </receiver>
请指教
错误是:
\n\nFatal error: Uncaught Error: Class \'Championsweb\\Model\\VO\\CompeticionVO\'\nnot found in E:\\Drive\\Proyectos\\ChampionsEclipse\\public\\CrearCompeticion.php\non line 4\n项目结构:
\n\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80config\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80public\n\xe2\x94\x82   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80css\n\xe2\x94\x82   \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80js\n\xe2\x94\x82       \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80vendor\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80src\n\xe2\x94\x82   \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80Championsweb\n\xe2\x94\x82       \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80Controller\n\xe2\x94\x82       \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80Model\n\xe2\x94\x82           \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80VO\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80templates\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80tests\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80vendor\n\xe2\x94\x82   \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80composer\n\xe2\x94\x94\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80views\nCrearCompeticion.php(位于 public/ 中)如下所示:
\n\n<?php\n\nif (isset($_POST) && sizeof($_POST) > 0) {\n    $competicionVO = new \\Championsweb\\Model\\VO\\CompeticionVO(\n        $_POST[\'nombre\'],\n        $_POST[\'anho\']\n    );\n    $adminactions = new \\Championsweb\\Controller\\AdminActions();\n    $adminactions->crearCompeticion($competicionVO);\n}\n\nrequire \'../views/CrearCompeticion.view.php\';\nCompeticionVO.php(位于 src/Championsweb/Model/VO 中)如下所示:
\n\n<?php\nnamespace Championsweb\\Model\\VO;\n\nclass CompeticionVO {\n    public $id;\n    public $nombre;\n    public $anho;\n    public $idGanador;\n\n    public function __construct($nombre, $anho) {\n        $this->nombre = $nombre;\n        $this->anho = $anho;\n    }\n}\n我在 PHP 中的名称空间方面遇到了麻烦。例如我有一个这样的文件
namespace App\Models\Abstracts;
abstract class Country{}
然后是另一个像这样的文件
namespace App\Models;
use App\Models\Abstracts\Country;
class City extends Country{}
我总是得到
致命错误:未捕获错误:类...未在...中找到
谁能帮我?多谢。
我在我的应用程序的 servlet 中使用以下代码
java.awt.Image awtImg = java.awt.Toolkit.getDefaultToolkit().createImage(str1);
当我运行应用程序并调用 servlet 时,出现以下错误
java.lang.NoClassDefFoundError: Could not initialize class sun.awt.X11.XToolkit
java.lang.Class.forName0(Native Method)
java.lang.Class.forName(Class.java:169)
java.awt.Toolkit$2.run(Toolkit.java:834)
java.security.AccessController.doPrivileged(Native Method)
java.awt.Toolkit.getDefaultToolkit(Toolkit.java:826)
noticeandreports.pdf.appendFiles.PdfFunctionsClass.addSealSpace(PdfFunctionsClass.java:198)
OJ.NoticesandReports.generate_151_OJNotice.execute(generate_151_OJNotice.java:768)
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:425)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:228)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
我已在具有 Java 版本 JDK 1.6.20 的 Linux 计算机上托管该应用程序。
可能是什么原因导致了这个问题...
noticeandreports.pdf.appendFiles.PdfFunctionsClass是编写代码的类,OJ.NoticesandReports.generate_151_OJNotice是调用上述类中方法的 servlet...
我有一个class MyClass工作正常。$obj = new MyClass()当我使用Works 就像魅力一样创建实例时
。问题是,如果我扩展它class MyClass extends MyExtends,它会给我一个错误:class MyClass not found。
因为细节决定成败,以下是一些细节:
1) MyClass 实例在同一文件中创建(称为 MyClass.php)。
$obj = new MyClass();
class MyClass extends MyExtends{
}
obj2)使用ajax调用创建
if($_POST['myAjaxFlag']){
    $obj = new MyClass();
} 
3)ajax调用返回成功,但是如果我打印返回的数据,我会收到该类未找到错误php消息。
我找到了人们拥有的其他线程并解决了这个错误; 但是,所有这些都没有使用完全限定的类路径.我似乎无法使Class.forName工作,我使用完全限定的路径.
我已经测试了从CLI编译并使用ItelliJ Idea.两者都失败了同样的错误.
代码(在测试目录中):
package test;
public class Test {
  public static void main(String[] args) {
    Class cls = Class.forName("java.util.ArrayList");
  }
}
错误:
抛出java.lang.ClassNotFoundException; 必须被抓住或宣布被抛出
上面的例子不起作用.提前致谢!
在将sdk工具和google play服务更新到6.5.87之后,我现在在我的android项目(android studio)中找不到com.google.android.gms.我怎么能解决这个问题?
现在出现的错误之一是:错误:无法找到符号类ActivityRecognitionClient
依赖{
compile 'com.google.android.gms:play-services:6.5.87'
}
我需要所有控制器中的一些常见行为.有一个好主意有一个BaseController并使所有控制器扩展该类?如果是这样,避免Fatal error: Class 'BaseController' not found错误的正确方法是什么.
classnotfound ×10
java ×4
php ×4
android ×2
autoload ×1
class ×1
classloader ×1
composer-php ×1
exception ×1
extends ×1
fatal-error ×1
jmx ×1
namespaces ×1
reflection ×1
servlets ×1
tomcat ×1