设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13774|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
( I* R* p( ^0 \5 x+ L. K
* m9 V0 j' G1 G% X8 B# V本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
* ], W- n6 Y8 y以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
/ Y  r1 r7 o3 I% T/ Bswarm.SignatureNotFoundException
. c* h4 q0 t. i, ?        at swarm.Selector.<init>(Selector.java:76)/ k. h2 q: c$ f( g$ ^% D6 q4 ^
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
4 _" |! Q3 \# w' Z/ p        at ActionGroupDemo.main(ActionGroupDemo.java:67)
( R! p$ m, ]8 \; a
1 R3 q% L3 Q! ~8 v
& Y- y5 w- i5 ^& M9 Gimport swarm.objectbase.SwarmImpl;% y4 ^+ ^7 m: J5 @0 A# D6 E
import swarm.objectbase.Swarm;. k1 e; |$ }) T8 I: B! J  |8 o
import swarm.activity.ScheduleImpl;
0 ~% z9 J* d6 kimport swarm.activity.Activity;
% N& n) F) V' n2 _! Pimport swarm.activity.ActionGroupImpl;; i6 L& M2 n9 k- m
import swarm.collections.ListImpl;  }; ~' o+ S+ x8 y2 J& l* M
import swarm.defobj.Zone; / @- Y) e1 i8 b! t
import swarm.Globals;' t+ a# O8 r3 ]. j
import swarm.Selector;# D  y1 P( l/ _
import swarm.activity.ActionGroup;
! G! _3 Z, E3 zclass Agent {
: }! g6 W- I8 w' c! h5 n        char id;
8 @, B$ u" G5 p5 I1 t2 J  s# i7 ~. Y3 U3 {
        Agent(char id) {  A+ N% W  J9 S! K9 i. g
                this.id = id;
6 ]5 ~$ x6 u( a; q4 h" t* g        }" j- s: k9 d) `) W' `
. x1 |2 v7 b7 s
        public void agentStep() {" t5 |1 c9 }9 r# U. C6 v) a
                System.out.println(id + ":" + Globals.env.getCurrentTime());7 y$ S/ }2 _: Q8 j  A7 Z
        }2 s& I9 f, `/ F4 e
}
3 J  m9 i4 S8 d
% H. Q: R  n0 V" {public class ActionGroupDemo extends SwarmImpl {
% a7 ~( `  O: [- Z! d        ScheduleImpl schedule;: @( z& ~8 p1 L/ t( W7 t) n* M6 y
        ActionGroupImpl actionGroup;
3 k! D; J# Q0 p- @4 D        ListImpl list;
* E9 S( U  d2 u3 R, v$ E* b6 l8 T        char Id = 'a';
+ s7 o# n. @  i' E6 }+ h, G7 v) U, {1 [9 w% p& U
        ActionGroupDemo(Zone aZone) {/ ~" r' k1 C/ a0 x- j5 V* I
                super(aZone);. e+ o: `, ~0 v8 @7 U6 M3 C0 F
                list = new ListImpl(aZone);, i+ ]' J+ x/ F+ s
                swarmSetp();
# F7 N6 K$ p  g: [                actionGroup = new ActionGroupImpl(aZone);6 @+ Q' ?- i: j' m# f! d
                schedule = new ScheduleImpl(aZone);
* Z+ f0 ]8 ~/ c" }5 A7 m% p7 q                try {4 a+ \7 i# s8 e, g; H
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);" [) K% r; U# E. ^, I$ l
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行! H2 ?8 W3 U. v7 s0 r. ~  G9 V# t
                        
# j! @  q( e) a1 i9 N                        actionGroup.createActionForEach$message(list, agentSel);, Z( Z4 b! O5 M  `- E9 t) _: L* y
                        actionGroup.createActionTo$message(this, swarmSel);
* N# @( Y7 \! ]- ]% ~6 ^1 T                        schedule.at$createAction(0, actionGroup);$ n) _0 [" _% h* c; Q: b
                        schedule.at$createAction(1, actionGroup);7 m- q: V* z+ ?1 E; K# M
                        schedule.at$createAction(2, actionGroup);
1 Z7 b+ g) M( G% F, G( d8 x  k. a7 I$ V, w, l- s6 ^
                } catch (Exception e) {5 c" M6 Q2 K! B
                        e.printStackTrace(System.err);
7 H* D+ N9 g4 B# g6 F9 h                        //System.out.println(e);% E7 |$ q1 o/ m; W4 B
                        System.exit(1);  G1 q! F. j+ W; D+ R& Z
                }- ?3 ~1 {+ Q8 Z- y! @, ]
0 C' p5 F! X" O8 v

/ `' F' F: v: ]- j        }! e. L5 E& q# K8 [0 V  X. n

0 y0 p' `9 \0 F; V, g" H4 O        private void swarmSetp() {
% {% h+ i, `3 ^: \( M, h                list.addLast(new Agent(Id));
+ T) b2 A/ E2 t6 E, o/ R* F2 V# N                Id++;4 h8 a& q" @/ {
        }& f# G. H; e9 d& u
9 G  R. {% G( A5 H
        public Activity activateIn(Swarm context) {
9 e7 U  W: t* `' w' z. M; U                super.activateIn(context);
. X5 V; f# p7 u                schedule.activateIn(this);2 Z% X9 g4 r& j8 W) G7 _
                return getActivity();) s3 l, U; H+ C4 {
        }# ?, K& I! I9 X( w& e) k) s2 O
4 F8 \: E- |' H+ c9 u: e6 |
        public static void main(String[] args) {1 @1 E7 m; U8 N7 E0 p' f
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
' R& N9 A0 l& q" `+ N                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 M" d# h$ j* e. _* o
                swarms.buildObjects();
' @1 ]5 S/ l- Y# U                swarms.buildActions();
' t! l- T( p& l* k2 y* I                swarms.activateIn(null).run();
+ A& K" I* z7 @( e; }! f        }% d8 _* `) ~# [4 W. F* h

. ?4 w2 t9 H/ ]& u}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-17 03:38 , Processed in 0.016992 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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