设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11664|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
, w# \: H5 U! l! p
3 V: O6 V1 j5 c0 v2 ]: H, ^本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21' U( o) j0 }  z% e  e
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# _' ~0 H7 G0 }: o
swarm.SignatureNotFoundException
- G& X& V4 T# r* `/ Z* h        at swarm.Selector.<init>(Selector.java:76)- u. \1 ?0 g9 D! j- x9 P  n
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)' g0 j8 q" ~( x9 H
        at ActionGroupDemo.main(ActionGroupDemo.java:67)- r1 [5 q' m  E: }: d

$ h# _1 }/ s" Y! l! n* i. ?, A' A, j0 j" @( Z! J
import swarm.objectbase.SwarmImpl;
5 U, D: m& o! z' d* J+ H+ r1 dimport swarm.objectbase.Swarm;$ t, l$ f' k/ w% _
import swarm.activity.ScheduleImpl;; ~% b. Z% D) I6 t) E8 H) A0 ?
import swarm.activity.Activity;- Z! j4 f# _! q$ C
import swarm.activity.ActionGroupImpl;
5 s, y& C8 a: X+ Q1 ^/ t& n6 V5 }import swarm.collections.ListImpl;% l% y# ?5 Y' o6 b
import swarm.defobj.Zone; & U% D2 q: F* H. V5 ~, S
import swarm.Globals;
( L: n7 q0 U3 q6 Fimport swarm.Selector;. f# y* ~% N% M, o/ G& ]8 C- E, B
import swarm.activity.ActionGroup;
" {4 N& x. X! Y2 h) y, rclass Agent {' E0 W/ @2 ?; v  U' T
        char id;
- W+ r1 s0 `2 }! i$ w
2 K$ C$ e& A7 [% y; y6 Z2 i        Agent(char id) {
; R/ M. t) M* _+ }/ B5 E, n# y0 ?                this.id = id;* [2 t+ r; X) {. e' j4 u. o9 k
        }2 c! H4 `  E! E& c$ r

/ _9 I$ j6 C7 q, y* C; q        public void agentStep() {
. S7 A: i" e9 d2 w% X                System.out.println(id + ":" + Globals.env.getCurrentTime());
, E+ b- \, ]0 ^4 H/ y9 i        }
$ Z: w3 g& g- G& a4 v+ E}
5 J( v1 q/ K# r9 m6 g+ e# t! a1 T6 i) u5 }
public class ActionGroupDemo extends SwarmImpl {+ j0 ?' }; m0 f1 X- W  t6 |
        ScheduleImpl schedule;2 k+ P6 n1 `+ h6 Y1 J
        ActionGroupImpl actionGroup;* r3 B) C) |  y' V  I! R
        ListImpl list;" ^" P- z& x! a" O+ }6 [, f5 k
        char Id = 'a';
. I3 q  I3 I; h/ E5 J# M# a- ^; ^) R4 z2 o8 X4 Y/ P
        ActionGroupDemo(Zone aZone) {
) r5 x& G! r( H% J. _) b5 t: h                super(aZone);# s9 @  s7 B" J
                list = new ListImpl(aZone);) K7 l; B7 t, E, [& J9 e
                swarmSetp();& \7 t8 r+ M8 \) d5 T& U% q2 _. @
                actionGroup = new ActionGroupImpl(aZone);) R/ {; |: c8 ~. [3 O9 r8 {
                schedule = new ScheduleImpl(aZone);
# M* k/ H5 Y: H& Q" _' H                try {
1 R4 [9 m9 l% E% t2 h- w                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
' E0 |5 u8 c+ c& J# w3 k9 p- K                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
0 Q# j! w2 m* v                        5 A  v2 |# K7 ]+ {
                        actionGroup.createActionForEach$message(list, agentSel);
5 Q8 q1 A7 j) ?2 O( q/ b                        actionGroup.createActionTo$message(this, swarmSel);# _; s" G" [2 _4 P, b0 F1 Q& B( e
                        schedule.at$createAction(0, actionGroup);
$ m9 G( A+ H7 ?- D+ J5 C2 n9 u                        schedule.at$createAction(1, actionGroup);
$ a& R* B( M* e                        schedule.at$createAction(2, actionGroup);
0 `4 w( d$ f# K: a
' L9 T. I' M9 p; X( G8 ^                } catch (Exception e) {) ~" }! h1 J! ~7 J+ `
                        e.printStackTrace(System.err);
+ {& H3 ]/ u9 r) w% c( [                        //System.out.println(e);' G2 B+ D4 v5 v2 ]1 l  c9 x
                        System.exit(1);7 V5 `. w1 b3 L+ Q6 s2 S
                }; [, Z$ O/ m( S, O

7 t* O  ~5 f' O$ |) s+ u& J) h6 G+ b* P
        }
' l2 P1 C0 j8 f; `7 n
4 |/ C8 f: ?  `        private void swarmSetp() {
2 r' r1 \- T' @/ i" n4 O                list.addLast(new Agent(Id));
% d! M* {( ?2 Z! a9 ^2 G                Id++;
+ w& h& j# n; {6 L- W        }# d& J  I% x  x$ m' L  E8 ^5 Q
2 B+ u! R2 B2 R. i8 a+ v9 L6 k
        public Activity activateIn(Swarm context) {
' N. q) a+ B" C" \4 `9 G: x                super.activateIn(context);
* L/ i3 O: R1 \/ q8 ^2 z5 B                schedule.activateIn(this);
& O* M$ X/ I: K- T- e4 R                return getActivity();
5 U) t5 Z' A7 W( `, `3 Y9 [) k        }
! K% r. J: a6 k* p2 r
5 l5 p/ y& M1 M- V$ N$ H        public static void main(String[] args) {1 S# P% _' i! k' p" e2 t; o4 a, S
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);# C6 ?- a+ N; t0 }! Z' c+ D! w
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);( K- a# X2 [" d; e3 H
                swarms.buildObjects();
  V3 E# C( |1 [- k& v                swarms.buildActions();- q4 ^* e/ j' |7 ~0 |/ ^0 m
                swarms.activateIn(null).run();# O  g4 S- z6 K9 K8 s0 g+ \
        }
7 D0 ?: T2 k! m* G
- I0 w0 E; i" N& J6 l+ R}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-18 12:58 , Processed in 0.013091 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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