1

我将一些 Java 项目从 Windows PC 转移到 Ubuntu,方法是“通过归档文件存储”(即 zip 文件)导出它,然后用相同的方法导入。

当我将它导入回 Eclipse 时,它​​说我需要先创建一个空白项目才能从存档文件中导入。所以我创建了一个新的虚拟 java 项目并将其导入。但是现在当我编译时,它不允许我说“编辑器不包含主要类型”。

由于我太新,无法在此处附上屏幕截图,因此我将其上传HERE。现在我该怎么做?

编辑:我要编译的程序是一个简单的程序,演示了不同类型的排序。如果你觉得你应该看到它,这里是:

import java.io.PrintStream;
import java.util.LinkedList;
import java.util.Queue;


public class Sorting
{
    public static void print_r(char[] arr)
    {
        for(int i=0;i<arr.length;i++)
            System.out.print(arr[i]);
        System.out.println("\n-----");
    }

    public static void print_r_int(int[] arr)
    {
        for(int i=0;i<arr.length;i++)
            System.out.println(arr[i]);

        System.out.println("\n-----");
    }

    public static void main(String sar[])
    {
        String st=new String("jsahen");
        PrintStream oo=System.out;

        /*char ar1[]=st.toCharArray();
        mergeSort(ar1,0,ar1.length-1);
        print_r(ar1);*/

        /*char ar2[]=st.toCharArray();
        quickSort(ar2,0,ar2.length-1);
        print_r(ar2);*/

        /*char ar3[]=st.toCharArray();
        insertionSort(ar3);
        print_r(ar3);*/

        int ar3[]={215,64,25,3,541,584,68,14,69};
        recursiveRadixLSD(ar3,1);
        print_r_int(ar3);
    }

    public static void recursiveRadixLSD(int[] str,int digitFromRight)
    {
        if(digitFromRight==4)
            return;
        LinkedList<Integer>[] q=new LinkedList[10];

        for(int i:str)
        {
            int t=i/(int)(Math.pow(10, digitFromRight-1));
            int rem=t%10;
            if(q[rem]==null)
                q[rem]=new LinkedList<Integer>();
            q[rem].add(i);
        }

        int c=0;
        for(int i=0;i<10;i++)
        {
            while(q[i]!=null&&!q[i].isEmpty())
                str[c++]=q[i].remove();
        }

        recursiveRadixLSD(str,digitFromRight+1);
    }

    public static void insertionSort(char[] str)
    {
        if(!(str.length>1))
            return;

        else
        {
            int wall;

            for(wall=1;wall<=str.length-1;wall++)
            {
                char t=str[wall];
                int ind=wall;

                while(ind>=1&&str[ind-1]>t)
                {
                    str[ind]=str[ind-1];
                    ind--;
                }
                str[ind]=t;


            }



        }

    }

    public static void quickSort (char[] str,int st,int en)
    {
        if(st>=en)
            return;

        int j=partition(str,st,en);
        quickSort(str,st,j-1);
        quickSort(str,j+1,en);
    }
    public static int partition (char[] str,int st,int en)
    {
        if(st==en)
            return 0;
        char a=str[st];
        int left=st;
        int right=en;

        boolean go=true;

        while(go)
        {
            while(left<=en&&str[left]<=a)
                left++;

            while(right>=st&&str[right]>a)
                right--;

            if(left<right)
            {
                char t=str[left];
                str[left]=str[right];
                str[right]=t;
            }
            else
            {
                str[st]=str[right];
                str[right]=a;
                return right;
            }
        }


        return -1;
    }
    public static void mergeSort (char[] str,int st,int en)
    {
        if(st==en)
            return;
        int mid=(st+en)/2;
        char ret[]=new char[str.length];
        mergeSort(str,st,mid);
        mergeSort(str,mid+1,en);

        int i,j;
        int k=0;
        for(i=st,j=mid+1;i<=mid&&j<=en;)
        {
            if(str[i]>str[j])
            {
                ret[k++]=str[j++];
            }
            else
            {
                ret[k++]=str[i++];
            }
        }

        while(i<=mid)
            ret[k++]=str[i++];

        while(j<=en)
            ret[k++]=str[j++];

        for(int l=st;l<=en;l++)
            str[l]=ret[l-st];


    }
}
4

3 回答 3

2

您的文件夹Scratch/src未被 Eclipse 识别(配置)为源文件夹。您将源文件移动到src或添加Scratch/src为源文件夹。右键单击项目-> 属性,Java Build Path从右侧选择。

于 2012-06-01T11:44:58.993 回答
0
  1. 打开java类进行编辑
  2. 右键单击编辑器窗口中的任意位置(源文本所在的位置)
  3. 选择Run as > Java Application
于 2012-06-01T11:50:14.273 回答
0

检查构建路径后,这仍然发生在我身上。因此,我在“运行配置”对话框中手动输入了主类并且它起作用了。

于 2012-11-22T08:12:49.930 回答