Eclipse无法自动编译出class文件

    有时候用Eclipse或者MyEclipse的时候,发现不能自动编译,web工程下面缺少class文件!
    第一个可能是你的自动编译没打开:project->build automatically;第二个要注意你的工程项目上有没有打小红叉,项目报错时,eclipse是不自动编译的。你可以检查一下是否有些类出错,或是检查一下“构建路径”是否完整,特别是从换机子调试程序时,有些导入jar包的路径不对。
    通常我们遇到的是第二个,就是有的包在别人机器上是有的,但是到你的机器上相同路径是没有的,删去和那个包有关系的,或者添加新的包路径
    eclipse出现不编译工程的现象。怎么刷新classes目录下也是空的。
    具体都操作了:打开project->build automatically   试后不行,还是不编译。
    打开project ——> build automatically 另外 clean一下就可能会编译了,结果还不行。(一般先运行project ——>clean…,然后再执行build automatically)
    eclipse默认是选自动编译。即使取消自动编译,手动build工程,也不能编译。

    出现这种情况一般有以下几种原因:

    无法编译class文件,说明项目有错,删除在view’problem’,重新编译就可以了

   

  项目错误,可能有以下可能性

    1.如果项目里引了某个不用的jar包,而那个包又被你删了,就会出现不报错但怎么也编译不出来class文件的情况,可以把所有包都删除,然后一个一个的再引入(需要的),不要一下子把所有包都引入来,没用的可能会引起不良后果。

    2.想删掉某个class文件重新生成,删除class文件后,但classes目录下的文件夹被其它程序打开,比如Total Commander.此时编译也不会通过,在View下problems下可能会提示“con’t delete classes ……”。关掉其它程序重新编译即可。
    3.还有种情况是remove掉 JRE System Library,重新导入即可编译。但是什么原因导致的还不清楚。
    4.项目引用了其他的项目,而被你引用的项目引用了某个不用的jar包之类
    如果你使用了maven你可以在命令提示行下,跳转到项目路径,执行mvn eclipse:clean eclipse:eclipse重新编译项目

Python发布自定义模块(五)

php开发中,我们定义好了一个公用函数,则会将代码放在公用的文件中,需要用到的时候,使用require或者include函数包含这个公用的文件,即可在程序中实现可重用。接下来看看python中如何操作

1. 在e:/python目录下新建一个文件夹nester做实验,建立2个py文件分别是nester.pysetup.py

          nester.py

#计算圆的面积,参数为半径
p = 3.14
def area(r=1):
    # p = 3.14
    return p * r

          setup.py

from distutils.core import setup
 
setup (
    name = 'nester',
    version = '1.0.1',
    py_modules = ['nester'],
    author = 'Rick.xu',
    author_email = 'jkxyx205@163.com',
    description = 'calculate area of circle',
)

注意:
name和py_modules这两个参数一定要与nester.py文件名相同,否则发布安装时会发出模块文件找不到的错误

2. 发布模块

发布模块,但还不能在程序中被调用,还需要安装,接着看

3.安装模块

4.使用模块

import nester
nester.area(2)

这里需要注意一个问题,很多新手会这样调用:area(2)
系统会发出这样的一个错误信息:NameError: name ‘area’ is not defined
原因是当模块创建以后,系统自动创建一个与模块名称相同的命名空间(nester),并将函数放在命名空间中,简单的通过area调用,自然无法找到函数,正确的方法:
nester.area(2)
直接把命名空间带上即可。

Python代码片段(四)

Python代码片段

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
#这是一段注释
a = 1000
if a > 100:
    print('中文:a > 100')
else: 
	print('a <= 100');

names = ['Rick','Ashley','Mike']

#for循环操作
for name in names :
	print(name)

#自定义函数
def my_fun(age):
    if age <= 20:
    	print("young man")
    else:
    	print("old man")	
    return 2,'Mike'   	

#先定义后使用
res = my_fun(17)  

#返回一个元组tuple
print(res[1])

Python基础(三)

基础学习

下面是一个Python的代码程序片段

#这是一段注释
a = 1000
if a > 100:
print('a > 100')
else: 
print('a <= 100');

#后面跟注释语句,其他没行都是一个“有效”的语句,当语句以:结尾时,缩进语句视为代码块,缩进的另一个好处是强迫你写出缩进较少的代码,你会倾向于把一段很长的代码拆分成若干函数,从而得到缩进较少的代码。

Python是大小写敏感的。

1.数据类型和变量

  1. Python可以处理任意类型的数字,程序的表现方法跟数学是一致的:1,0,-100;浮点数也就是小数,之所以称为浮点数,是因为按照科学记数法表示时,一个浮点数的小数点位置是可变的,比如,1.23×109和12.3×108是完全相等的。浮点数可以用数学写法,如1.23,3.14,-9.01,等等。但是对于很大或很小的浮点数,就必须用科学计数法表示,把10用e替代,1.23×109就是1.23e9,或者12.3e8,0.000012可以写成1.2e-5,等等
  2. 浮点小数:浮点数也就是小数,之所以称为浮点数,是因为按照科学记数法表示时,一个浮点数的小数点位置是可变的,比如,1.23×109和12.3×108是完全相等的。浮点数可以用数学写法,如1.23,3.14,-9.01,等等。但是对于很大或很小的浮点数,就必须用科学计数法表示,把10用e替代,1.23×109就是1.23e9,或者12.3e8,0.000012可以写成1.2e-5,等等    
  3. 字符串

         用’或””表示括起来任何文本,比如’abc’,”efg”。如何文本中包含’或者”,可以通过\进行转义,列如:

'I\'m \"OK\"!'

表示的是

I'm "OK"!

2. 布尔值

Python中用True和False表示,注意大小写

3.空值

Python中用None表示空值,None不能理解0,因为0是有意义的

4.变量

a = 100

b = a

a = ‘100’

c = 10

    

Python环境搭建(二)

Note:Python是在3.x下搭建的,所有后续的教程都是基于3.x讲解的。

软件下载:

https://www.python.org/ftp/python/3.4.3/python-3.4.3.msi

安装:

下载完成之后,双击完成安装。

安装过程中需要注意配置,环境变量path:D:\develop\Python34\python.exe

在cmd下输入python,会出现,表示安装成功。

第一个Python程序:

1. 在控制台输入:计算100与200相加

>>> 100 + 200
300
>>>

2. 控制台打印:

>>> print('hello world')
hello world
>>>

最后可以通过exit(),退出控制台