设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11028|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 % t! `5 F" ^# T6 h

. {: q) @& _9 ~  i本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21% b" ~- n6 U3 Q  R+ R
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.3 ^9 I* u, |( T0 G# V! A
swarm.SignatureNotFoundException
) W; q5 I3 p5 k        at swarm.Selector.<init>(Selector.java:76)& E( B8 `! Q- u# ?2 Y6 i( n
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
2 M# ~  G! Y& C* ]( ~4 U! [        at ActionGroupDemo.main(ActionGroupDemo.java:67)
3 `5 ]/ i: ^% o# t
. A; G9 X7 k" ^
9 P5 R# R1 l# {import swarm.objectbase.SwarmImpl;
8 W8 D, W/ M' \import swarm.objectbase.Swarm;
/ b' J) F6 n. z! fimport swarm.activity.ScheduleImpl;
7 M1 O; ?, Q/ E7 ~import swarm.activity.Activity;
  `+ H" I$ X) T: Wimport swarm.activity.ActionGroupImpl;
6 B$ \4 M! H2 limport swarm.collections.ListImpl;; L; `. Q! Q; L
import swarm.defobj.Zone; ! A5 X6 t- H$ m4 W
import swarm.Globals;
, |, n) P7 N; }- M* Cimport swarm.Selector;5 \4 Z* B1 F6 A$ {. ]
import swarm.activity.ActionGroup; 5 P/ D1 g: o  H3 d$ g. K% `
class Agent {. D& `# \& K# D+ y3 @) _/ Z+ _7 D( \
        char id;
5 ?( M. _  D7 h$ E4 n# ]4 M! D4 @) O
        Agent(char id) {
, M- y, ?# k+ ]% C- g7 ~% Z4 D                this.id = id;" o0 u; c: ?5 L/ j6 k5 A1 E+ V
        }3 l/ X! E6 R  [0 D/ c* L9 ]1 C

% u- R- y" Y4 s/ w- Q        public void agentStep() {. S  I( \% X( ]$ s  X8 C* ^
                System.out.println(id + ":" + Globals.env.getCurrentTime());
' \9 Y! q7 j6 O4 d! Y6 n  F/ T- u        }- i/ ^/ `* D+ `4 M
}
8 D5 P% i# I( m. j, f" j4 ^/ c6 T1 E" \3 V, @. ]2 O* f4 d
public class ActionGroupDemo extends SwarmImpl {
" y& n* R) ^! o6 S        ScheduleImpl schedule;: O0 Z; ?8 [& d* j
        ActionGroupImpl actionGroup;( O2 Y# y5 j' x& j+ H" ^0 R
        ListImpl list;% W- @5 o% z& F6 B! q
        char Id = 'a';- Q+ l- z: E: t7 Z" R! x' ]
( s: M( v0 z/ J8 f  D+ _- V
        ActionGroupDemo(Zone aZone) {
9 z( n9 g/ r/ v4 }                super(aZone);$ m3 u7 Q- ]0 E* I! w' _
                list = new ListImpl(aZone);& |6 h% W6 D' q" |  F5 c& N
                swarmSetp();
" c3 x5 f- a7 \, y, ]4 T                actionGroup = new ActionGroupImpl(aZone);
% |9 l. j7 u2 C                schedule = new ScheduleImpl(aZone);
$ U) ^; x- J/ T- j7 [7 Z                try {: C* u, D" j$ A% h
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);' X% @4 N% j% C6 `( n! C, s( }8 T
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行8 v; G$ n/ T, a9 R- A- x2 W  |
                        
5 {" T9 E' G1 U# W                        actionGroup.createActionForEach$message(list, agentSel);
& L1 h- ^: g- q, p1 }                        actionGroup.createActionTo$message(this, swarmSel);: l4 C' t' a4 E: B# S1 T
                        schedule.at$createAction(0, actionGroup);
/ C* s/ Z- \% |- S                        schedule.at$createAction(1, actionGroup);
7 J# C4 B! k" _- Z' C                        schedule.at$createAction(2, actionGroup);
9 ]3 ^. v" u) o5 G% K6 J7 V3 s6 j* U$ d: V& ^- y# f) p& Q/ R
                } catch (Exception e) {3 V/ W8 o5 [; x) r
                        e.printStackTrace(System.err);
4 [- X! o; q9 p9 v; j/ c$ P                        //System.out.println(e);
  O4 u7 p, i+ y+ {) ], D                        System.exit(1);
1 L$ I! b5 ], y1 f) z& `                }4 p  h0 ~3 L( ~

0 Y& R5 T' t$ N( _) X, h) p6 g" j4 o8 X8 e" z2 l4 k5 c
        }
7 ?. S. M/ v9 d0 T- g+ e# K# C2 |' b. ~% D4 W5 s: ~; ~& D+ e
        private void swarmSetp() {. r5 F$ d5 O) ?4 S, O
                list.addLast(new Agent(Id));
4 U8 S- S6 N' b/ O8 i; Z4 L                Id++;
& E3 u7 L2 d3 O7 ^% W% i8 n        }
+ r9 @6 W' F8 h" v* D: `" R7 O4 t, d4 }% z! J3 g! K( T& G6 x
        public Activity activateIn(Swarm context) {- W: E) w8 X0 ]8 o" A5 E3 U" ~9 D
                super.activateIn(context);
/ F, }0 S( ]9 ~7 p0 t5 ^( U8 B- J& Y1 d                schedule.activateIn(this);
6 B# \# X8 T5 s$ M- {( S                return getActivity();
! b8 e, B6 V- {5 d( |4 K        }) Y5 v0 v# o7 z& ~" i, {
& i. j  y* m% h
        public static void main(String[] args) {$ y: R% y, m$ @5 W9 V" t9 E* v, R
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);4 [/ W5 W& S% }7 ?, F* ^0 S
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
3 D& S0 \$ H! G5 T                swarms.buildObjects();
$ m  }, z1 b' k- W8 n/ }$ h                swarms.buildActions();
; J$ P  N) D. d5 i                swarms.activateIn(null).run();
8 Y% G6 h# _, f5 u$ F6 b% n9 b  l- H        }' b7 Y5 M! H) y  Q$ {& y

( C/ D2 T, y7 T+ |/ \}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-30 20:38 , Processed in 0.014505 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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