设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13462|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ( Q9 }0 u9 P  Y
+ {+ n4 z0 v& w2 Z
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
1 m7 w9 R  A9 C- }' I  Y以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 {8 N1 }& o$ C7 R
swarm.SignatureNotFoundException% j, ^4 i! I& C# E: n
        at swarm.Selector.<init>(Selector.java:76)1 }/ l( D; }! A% v
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)/ P4 m' J4 J1 F. d
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
9 |5 ^7 T& q% u* S% u4 M6 \( U' \6 F* A* c5 w

/ t) l: k; i4 l  e: D' `3 O& Cimport swarm.objectbase.SwarmImpl;
$ d0 A+ s$ R( l4 a- nimport swarm.objectbase.Swarm;% R! h7 q  _0 {' f9 J* d4 }! j& {
import swarm.activity.ScheduleImpl;
( T+ D& c2 o; M5 U9 oimport swarm.activity.Activity;1 [3 C0 g4 x2 q7 c5 o9 V& w
import swarm.activity.ActionGroupImpl;
% R& z8 p/ h5 d3 z' Gimport swarm.collections.ListImpl;+ J' C( \5 {$ M( \
import swarm.defobj.Zone; 1 q& f6 H. q0 _
import swarm.Globals;
# M2 E4 V9 _. Q1 s- Y; a2 timport swarm.Selector;/ z! C) k# k* y- g& W
import swarm.activity.ActionGroup;
1 ~5 n& B. h9 o) M8 h4 z5 S3 u; [class Agent {
6 u" n. j6 s3 F% ^3 g9 A        char id;( W; w8 W$ E# B* S/ ], A
/ I$ T  J% |; K) z* v/ v
        Agent(char id) {' S; K, K  j% h0 i$ G
                this.id = id;7 J$ _3 V& X6 X- X' Y1 T
        }
- a4 o7 o/ Y- M( S" e
/ `" O- z6 \( o; I& G, z% x        public void agentStep() {
: N  a, H& V2 i5 e* k0 h" R                System.out.println(id + ":" + Globals.env.getCurrentTime());2 u& e& T  a# g0 T
        }$ h  b/ [% `8 x! M
}& h4 d, C! i# V
1 X* ?% t2 Q/ l& }6 R  l" Z
public class ActionGroupDemo extends SwarmImpl {
, @+ f" }/ F$ I9 {. }        ScheduleImpl schedule;
) M7 I$ _2 O# @3 _; O        ActionGroupImpl actionGroup;
7 {6 M: k) l9 T5 f        ListImpl list;
3 i0 W! g( C1 ]  l# D0 v        char Id = 'a';4 R8 o2 \* |8 }" L
2 v0 G1 o7 T; {
        ActionGroupDemo(Zone aZone) {  h+ @  D' |. o; ^9 ]. j7 B
                super(aZone);4 x+ R! u9 }. ]' |; g/ X& d" h
                list = new ListImpl(aZone);
- l& t# v6 z' k! |7 K                swarmSetp();
& U7 i8 h6 J- s( r                actionGroup = new ActionGroupImpl(aZone);! X6 a( l" N' ]2 d: ~3 R6 ~- M/ @
                schedule = new ScheduleImpl(aZone);
* ~9 J1 ?  m' E                try {
1 j, F1 k' a6 H! n                        Selector agentSel = new Selector(Agent.class, "agentStep", false);  Q8 ?: a  q  E" ?8 R
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行+ ?- W; e0 u% j/ \+ h
                        
( [: R$ l4 n% b  M                        actionGroup.createActionForEach$message(list, agentSel);
/ A; T/ D" y  M' p! P4 X                        actionGroup.createActionTo$message(this, swarmSel);- P2 i) r7 x5 N+ ~& a
                        schedule.at$createAction(0, actionGroup);. p7 \* v+ I4 a  l+ g/ g, {( f
                        schedule.at$createAction(1, actionGroup);
6 w, j6 S5 v8 N' H+ S, Q                        schedule.at$createAction(2, actionGroup);0 f% d" g5 g+ _* ^* A; V) Y& @

# ]3 p) g% f/ B7 E" B8 _                } catch (Exception e) {/ B/ }, U2 `) T8 c6 T/ D4 G9 R( `2 r
                        e.printStackTrace(System.err);% \% j6 F) \1 b3 I4 z9 K" u
                        //System.out.println(e);
0 Y* _- b% l2 N                        System.exit(1);
6 R% e4 f; Q# p                }/ N3 I" o: ~. }0 g! t) l
) F% }  q, }; ]) m- ]# n
% V, V8 t2 W/ S& ^# R6 _
        }1 h7 \$ w, g% J
$ [6 z- r5 x9 v( ]" n5 b
        private void swarmSetp() {+ g: W% n& f0 F) R6 q4 ?
                list.addLast(new Agent(Id));" e2 F; t2 i+ l% Z
                Id++;# l" u& K& N! Q
        }# o& u: B' S$ {$ _: d" X

. Z# A) i' x$ s! J5 j: T        public Activity activateIn(Swarm context) {
- s( z9 x- E4 z1 F: l                super.activateIn(context);
( X% D* k- f) g) B% L- Y3 R                schedule.activateIn(this);
" }; O/ d; T7 m                return getActivity();9 d. I" D+ a2 H  [1 f: i
        }
2 n6 c( P. I! P# z* K" a) f+ d* T
0 s* o; Q( k8 S        public static void main(String[] args) {# k4 T, \3 W7 _% ]- ?% U( E: n% K
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 a; F1 o# w! }: p" k$ f* F; c                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);4 b$ Q+ t; D2 G- L* _3 y$ f
                swarms.buildObjects();
6 f: f& a1 q" J) M! F! Q6 t4 C                swarms.buildActions();5 r) C4 K7 n: n' v% ]* [
                swarms.activateIn(null).run();1 N* {# v3 F  f- y: k; E+ a* K
        }
3 j3 P7 y! f7 k, \+ u+ P
; j/ F* }7 A; F' _- w# K  c" ~}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-7 20:18 , Processed in 0.012860 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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