java程序编译通过但是运行时显示“找不到或无法加载主类 helloworld ” ,怎么解决?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java程序编译通过但是运行时显示“找不到或无法加载主类 helloworld ” ,怎么解决?相关的知识,希望对你有一定的参考价值。

参考技术A

既然javac编译已经通过,这说明变量java-home已经配置的没有问题了。

(java-home对应的变量值为javac.exe所在的路径;一般是在安装路径下,例如c:\\Program Files\\Java\\jdk1.7.0_45\\bin)。 

那第一种可能就是:问题就出在Path变量对应的变量值上或者是新建用户变量classpath上有问题,你重新配置一下。Path对应的变量值是在原来的变量值前面加上%Java_Home%。

第二种可能就是:你的环境变量都是正确的,只是你编译的java源文件中,主函数public static void main(String args[])没有写在main这个类中。

一个java源文件可以写很多类,编译的时候javac源文件之后,每个类生成一个class文件。你去运行的时候,并不一定是去java源文件名,而是去java主函数所在的那个类名。 

第三种可能就是:像intopass说的那样,你在eclipse写的时候里面会有package,你把它删掉试试。

php脚本通过ajax运行时显示进度条

【中文标题】php脚本通过ajax运行时显示进度条【英文标题】:Display progress bar while the php script is running through ajax 【发布时间】:2016-03-19 14:22:39 【问题描述】:

我有一个通过 ajax 向服务器提交值的表单。

<form>
<input id="titlee" name="titlee">
<input type="file" name="fileToUpload" id="fileToUpload">
<button  type="submit" value="submit" id="submit" name="submit">Start</button>
<div class="progress"></div>
</form>

脚本

<script type="text/javascript">
$(function() 
    
        $("#submit").click(function() 
            
                var titlee = $("#titlee").val();
                var fileToUpload= $("#fileToUpload").val();

                var dataString = 'titlee='+ titlee + '&fileToUpload=' + fileToUpload;

                $.ajax(
                    
                        type: "POST",
                        url: "c_insert_test.php",
                        data: dataString,
                        success: function()
                    );

                return false;
            );
    );
</script>

c_insert_test.php

   <?php
    $titlee = $_POST['titlee'];
    $target_dir = "reqdoc/";
    $target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);
    $uploadOk = 1;
    $imageFileType = pathinfo($target_file,PATHINFO_EXTENSION);

    $new_filename = $target_dir . uniqid() . '.' . $imageFileType;
    if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $new_filename))
           
            $filee = $new_filename;
            // insert query to insert the image path and other parameters in the table
        
    else
        
            echo "false";
        
     ?>

对于进度条,我在这里有代码at this jsfiddle

我希望在参数和图像通过表单上传到服务器时显示一个进度条。但是我无法将进度条与 ajax 合并,谁能告诉我如何合并这两个代码,以便我可以显示进度条并将图像上传到服务器文件夹

【问题讨论】:

这将帮助你更多phppot.com/jquery/jquery-progress-bar-for-php-ajax-file-upload 另外***.com/questions/22502943/… 会帮助你。 【参考方案1】:

我会给你方法 What is the cleanest way to get the progress of JQuery ajax request?

JQuery

$(function() 

    $("#submit").click(function() 
    
        var titlee = $("#titlee").val();
        var wtag = $("#wtag").val();

        var dataString = 'titlee='+ titlee + '&wtag=' + wtag ;

        $.ajax(
            xhr: function () 
                var xhr = new window.XMLHttpRequest();
                xhr.upload.addEventListener("progress", function (evt) 
                    if (evt.lengthComputable) 
                        if (evt.lengthComputable) 
                            var percentComplete = evt.loaded / evt.total;
                            console.log(percentComplete);
                            $('.progress').css(
                                width: percentComplete * 100 + '%'
                            );
                            if (percentComplete === 1) 
                                $('.progress').addClass('hide');
                            
                        
                    
                , false);

                xhr.addEventListener("progress", function (evt) 
                    if (evt.lengthComputable) 
                        var percentComplete = evt.loaded / evt.total;
                        console.log(percentComplete);
                        $('.progress').css(
                            width: percentComplete * 100 + '%'
                        );
                    
                , false);

                return xhr;
            ,
            type: 'POST',
            url: "c_insert_test.php",
            data: dataString,
            success: function (data) 
                //Do something on success
            
        );

        return false;
    );
);

CSS

.progress 
    display: block;
    text-align: center;
    width: 0;
    height: 3px;
    background: red;
    transition: width .3s;

.progress.hide 
    opacity: 0;
    transition: opacity 1.3s;

这可能是一个合适的解决方案。

【讨论】:

我试过你的代码,但没有显示 preogress 栏。 你必须按照这个来放置css。这是仅用于跟踪 ajax 进度的代码。 请检查我是否包含 css 以及它的实现。 我应用了 css 但仍然无法显示栏。我也更新了帖子,如果你能再看一遍将不胜感激 可能是其他问题。检查 console.log(percentComplete);你明白了吗?如果你得到这个,那么显示问题意味着 css。

以上是关于java程序编译通过但是运行时显示“找不到或无法加载主类 helloworld ” ,怎么解决?的主要内容,如果未能解决你的问题,请参考以下文章

运行给定程序时显示编译错误

在运行时显示 loadlib

JAVA运行时显示 程序内存不足,该如何调整

Xcode 在编译器开始编译时显示错误

如何在编译时显示 #define 的值?

《java JDK7 学习笔记》课后练习题3