设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13299|回复: 1

[求助] 总是出现swarm.SignatureNotFoundException错误

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 $ d9 `6 H/ w& d' o

5 E; T5 ^6 [' z' ~" h2 N本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21  p) H  M/ F1 y6 w8 {( h- i
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.3 ?; d* @4 v2 b! j, m$ S- R6 M. n/ Y
swarm.SignatureNotFoundException
* ^, {! Q% ?+ Q; M# d: w        at swarm.Selector.<init>(Selector.java:76)0 \/ T& [8 p  H, d
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
9 w  `4 [- M1 O6 S+ G- j  }        at ActionGroupDemo.main(ActionGroupDemo.java:67)5 W- O4 H6 b  t( l( F

. B4 c+ }$ `; i$ ]+ O( t1 o  y1 z5 D* I8 s! C
import swarm.objectbase.SwarmImpl;
" B2 u4 w' y; ^. }import swarm.objectbase.Swarm;
' j+ \% v( s9 Y" ?import swarm.activity.ScheduleImpl;
. R2 l, D% o/ ~  k. p. S8 Nimport swarm.activity.Activity;. o9 g" X+ _, `/ Q
import swarm.activity.ActionGroupImpl;( i$ x: e: I0 a3 S! t; V7 X
import swarm.collections.ListImpl;" N8 E' W4 |1 a
import swarm.defobj.Zone; . z# D* L: ~) W2 ?! f# i0 Q
import swarm.Globals;
- u9 \% \/ ^( g) R& y, P) nimport swarm.Selector;7 ]0 K4 W$ L* K0 P/ l1 I
import swarm.activity.ActionGroup;
" m: m$ E0 x8 \, l3 a9 Zclass Agent {  \0 D8 r' z" n4 _9 E4 x
        char id;
% S3 M) p" B6 \2 f5 N
+ G- X* l/ D: `3 q# _( y        Agent(char id) {
  C% w: {( B/ c2 i6 A6 d3 r9 D; _                this.id = id;' n' C; ]: y6 h9 n
        }6 Q  P- k+ o; y' x! h2 s
: k9 C0 Z6 Q  D7 k
        public void agentStep() {
# E! j9 n0 Q1 ~: v+ w                System.out.println(id + ":" + Globals.env.getCurrentTime());6 N: @- U1 g- [7 V" K; n. R
        }
: j, O6 s9 C, ^0 [5 T& t' k}0 h- `( a7 x$ h2 e* ?4 G
7 T/ c1 p$ O0 J! }
public class ActionGroupDemo extends SwarmImpl {
, O' N& r) V- Y" R5 C% `        ScheduleImpl schedule;) P3 d# q1 g" ^4 C- y0 ]. x# y8 @+ `
        ActionGroupImpl actionGroup;' Q* H( l  K- V* m6 R: f  [" B6 H
        ListImpl list;
; n- _! o1 {7 k        char Id = 'a';
! \- s& |/ l2 c5 @
$ M6 P+ f: w$ d& C6 q+ d        ActionGroupDemo(Zone aZone) {
2 z3 p! L1 h/ N                super(aZone);
- p3 L# U# M. N9 P, s( z                list = new ListImpl(aZone);
6 F$ u8 |. x8 [7 y" D                swarmSetp();
1 h! R" z: p+ I- J6 A1 w                actionGroup = new ActionGroupImpl(aZone);; r5 ^! d* x0 [
                schedule = new ScheduleImpl(aZone);3 U. B3 T  ?3 G, |% _
                try {6 ]# q, @% {5 Z' z# q2 l
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
, W7 A9 G+ p4 \2 ?+ S                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
1 B/ F* B, E% X' }: @8 @                        : `6 Y- _. P  ?7 w, B
                        actionGroup.createActionForEach$message(list, agentSel);1 K6 t( q7 B: {9 d2 z( D6 m
                        actionGroup.createActionTo$message(this, swarmSel);0 ~: P* V. @( s
                        schedule.at$createAction(0, actionGroup);
8 u, g8 i, ~; n: n# G                        schedule.at$createAction(1, actionGroup);
1 `- X. o, E" z4 F, F# C                        schedule.at$createAction(2, actionGroup);
' g! L% l0 ~8 F* ~
( F5 S& ?5 Q8 ^( |7 E+ R( v, ^5 A                } catch (Exception e) {
9 I# M* e6 ^8 Y) G                        e.printStackTrace(System.err);& ^& S' ?7 U: b( H0 U1 P* a% X% y
                        //System.out.println(e);
" r1 O, b6 X4 J' ^& [                        System.exit(1);3 H' J1 ?; X$ b7 C# {% T' y
                }
/ ?, z0 W7 ^6 z) e5 t, c: x5 R% V5 W

% h( d8 m3 E* p        }$ g1 ]+ v2 B6 o6 Q

% x& ]# Z( E  \, r3 f8 @        private void swarmSetp() {1 ?+ u! L% {8 V" ~; ]2 X
                list.addLast(new Agent(Id));
( ?- x0 j8 m7 A* W3 h                Id++;1 u5 q4 B' F# e8 t) V& v& ^
        }& f8 I1 y% X# s5 x5 }8 ^2 L" A) B+ Z

# H# K9 e6 e4 X: P+ }! ]0 t- W        public Activity activateIn(Swarm context) {
% i+ P' ?- r% X1 x& ?                super.activateIn(context);
+ C# Q% L5 O$ ]) \/ O7 h                schedule.activateIn(this);
( d1 H. @) c( q1 p                return getActivity();( T- J9 K/ V- ]6 W: r
        }  L, e5 a* {' y+ e
+ g" e( f/ t# h( V, `) g6 i
        public static void main(String[] args) {
" n% c' m! V$ K# N                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
8 q( Y# }  e' ~( v* x  f0 ]: z' p% d6 q" R8 |                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
! a1 F3 Y: p5 j# |8 O! P                swarms.buildObjects();
9 [& m8 g* U% S3 A  {                swarms.buildActions();3 S! N% @  D  M7 I. o
                swarms.activateIn(null).run();0 A: w. L  k) y4 e8 P
        }
% _1 ~+ @; x7 M" Q7 g8 Y4 d8 M3 f( G0 k- X: I0 A; o
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-9-3 08:48 , Processed in 8.518648 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表