设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10033|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ' c* |+ L$ w! ^$ ~- B% N
+ ~2 o6 X* O& e* g/ }, B0 @: ?/ P
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
, i3 V2 Z( x' G8 y& D1 V以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.$ Z( s& c! K7 J+ w( R1 M% k6 u
swarm.SignatureNotFoundException) u8 t/ d' c+ h/ x/ y1 l! b
        at swarm.Selector.<init>(Selector.java:76)
% p4 s# l* m) t! k- g        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
2 Y% D/ ]: B; y" i$ M7 m: v, h  q        at ActionGroupDemo.main(ActionGroupDemo.java:67)
2 K, t. b% c$ ]
, Q' d* y# f) \  q- }+ V+ m% F& S+ q6 c" k
import swarm.objectbase.SwarmImpl;
* K3 B4 Q: q( H  G* c" J: `5 l& _import swarm.objectbase.Swarm;  f. O+ ~+ \, E) q% B$ R, T
import swarm.activity.ScheduleImpl;
. x2 M& {! [3 L  x5 w) bimport swarm.activity.Activity;
+ o# Z2 J# N" d# m9 y/ |import swarm.activity.ActionGroupImpl;
2 C. a3 P5 `/ {import swarm.collections.ListImpl;7 g9 f, f9 U, M% M8 T- G
import swarm.defobj.Zone; : c! d& ^# N# {4 {
import swarm.Globals;: J  s5 r& N( P! t# u) ]7 R
import swarm.Selector;
- d6 ~/ E, g# Q& B# W, X9 W, |. O2 v( zimport swarm.activity.ActionGroup; 2 a) c6 Y/ ^" g: b/ B
class Agent {$ s- `' k# ~, q( i& P) _! K) [# x6 i
        char id;
- O* A0 s/ C, M- p: p# ^) V* Z" a+ l) E  R8 f6 h
        Agent(char id) {) o8 h+ i. @" a; x7 b
                this.id = id;
7 G  O" S0 t8 |* H: e4 n1 h        }
8 s6 J6 C+ R' a
( H, u" k0 }8 a+ K2 l        public void agentStep() {& m* G0 _4 R9 J: r% L$ l( M
                System.out.println(id + ":" + Globals.env.getCurrentTime());
- h; x, ]6 T/ W        }. q  ~4 _! H4 n: r
}
0 _0 o( Y! m( E; V/ h8 o" C4 e+ ^8 {1 b  t
public class ActionGroupDemo extends SwarmImpl {0 ^6 Y4 ~. I  ~# k/ k
        ScheduleImpl schedule;5 O9 k+ s! |) G* z$ i
        ActionGroupImpl actionGroup;
" q* u% G+ X: X/ `* A/ c6 @        ListImpl list;
# V' x/ g8 C+ j$ z* t        char Id = 'a';
$ o0 A  _3 C7 z  f  Q/ u
/ `1 L6 {2 L" n# H+ G* X6 d: f        ActionGroupDemo(Zone aZone) {
- X3 C( o- ~8 Y8 Q2 [/ u                super(aZone);1 _0 \/ @! Q2 ^( \! Z2 d
                list = new ListImpl(aZone);
% ?, p% t& ^* S+ K2 J3 m                swarmSetp();
/ u7 b8 Y( z1 r3 R                actionGroup = new ActionGroupImpl(aZone);
2 @5 n; [+ B' v! a. ~) w3 d                schedule = new ScheduleImpl(aZone);
" E8 m% |$ }9 @                try {2 [0 _% R" D4 Z9 N$ `
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
& c5 _6 T, c  i                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行0 C4 t3 [. x3 R8 t* o# f1 }
                        7 L1 v! p7 u  N. c
                        actionGroup.createActionForEach$message(list, agentSel);! X, q5 A" e0 O, e+ ]; I$ j) l- c; O
                        actionGroup.createActionTo$message(this, swarmSel);, V5 N& k8 i% x" n1 l1 M0 ?9 w* g! v
                        schedule.at$createAction(0, actionGroup);
% p$ p* |! i+ X                        schedule.at$createAction(1, actionGroup);  P' T! E/ g. ~4 W! Y
                        schedule.at$createAction(2, actionGroup);
3 Q3 m2 Q1 R- y& k
% I: t0 t6 r9 Y/ ]' u3 O: x9 `                } catch (Exception e) {( ~3 ?: R. T7 a, C4 b7 z
                        e.printStackTrace(System.err);/ t# A; D8 L1 B1 P" }  X' u5 k9 s
                        //System.out.println(e);
8 i: _  C$ ]" }  I$ e+ k                        System.exit(1);
. y3 k4 f; w* n                }
3 b* \! @3 N3 ?0 r3 z' `, q  F  y) s
2 |( b, k$ P3 t1 ~4 n
* ?1 N( E/ @/ X% R0 F( x        }
$ ]3 S+ n8 f$ w0 W4 @1 _$ X( v& g5 `5 x
        private void swarmSetp() {, R: S/ \7 J2 \* f7 p7 Z5 m! D
                list.addLast(new Agent(Id));
4 \* I; ]$ p2 U; [8 A                Id++;1 J* B% g5 c3 B0 W/ U  S. e0 `3 Z
        }+ A5 X' j- c; Y0 M
. v( r: j2 p! u' d" ~, z
        public Activity activateIn(Swarm context) {7 q, J# o5 L; H$ {8 q
                super.activateIn(context);5 z% i' e6 e, i: W( L
                schedule.activateIn(this);
% V3 P& \+ J+ _7 k                return getActivity();) B+ F( O3 u* E/ l! x. S$ Q2 ?) w3 D
        }
* c6 C3 D& _3 f# \" |* |. U& J2 e3 O" [! O  O4 w: X
        public static void main(String[] args) {, |/ h* d; f0 H" z
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 q* P5 t% B, z                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 U0 d# X. d7 x5 r. N; v4 k
                swarms.buildObjects();
3 @( u& n" _% w+ p7 ?5 j                swarms.buildActions();" N# J: z& d  _1 ?7 e
                swarms.activateIn(null).run();  ^% W/ y# I  S" x5 w
        }' B/ O# e; m- M5 H8 `+ r9 J
: V2 ]/ U& V0 E4 W+ V7 T6 g
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-1 08:18 , Processed in 0.013071 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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