设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13623|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 8 R/ \+ c' n2 @$ G
0 Q+ F+ [" G5 ~. d% ~" \! C
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
( i( n5 \0 a* y5 s" Y+ T" ?以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 w3 X0 Y2 @5 ?1 v! L% O4 j
swarm.SignatureNotFoundException2 z. N2 J! a0 s7 @- B/ C
        at swarm.Selector.<init>(Selector.java:76)4 j2 a% ?; @% X& @1 r' a7 q
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)% O! W& C( {  w0 i+ X* T
        at ActionGroupDemo.main(ActionGroupDemo.java:67)7 w8 ?  t) u+ \% `3 T

" J" ?. s, ^; {: E- i8 |/ P3 J4 ^& y! `) ^- k: q) A6 ]
import swarm.objectbase.SwarmImpl;% G6 t& V9 n0 V$ {
import swarm.objectbase.Swarm;9 o) E( o1 C: s: Y! e0 G3 K
import swarm.activity.ScheduleImpl;7 T% R6 ]# l& L
import swarm.activity.Activity;
; b: x2 o' t8 ?7 b3 gimport swarm.activity.ActionGroupImpl;' A+ W* g3 V* Z4 u- \6 u6 s* y
import swarm.collections.ListImpl;. Z) K- o  u7 D$ v0 U% P
import swarm.defobj.Zone;
* {& S3 X3 ]4 X7 E2 {import swarm.Globals;0 O6 R/ |3 R$ \& l# I" |: a
import swarm.Selector;6 ^4 |/ g+ i! R6 \
import swarm.activity.ActionGroup;
5 d4 f- y/ {* k& jclass Agent {$ {/ _& P, q1 R9 L" B
        char id;
- z  ~. F' |3 M+ I. t( H
$ r9 m1 W: \0 y* t; ], Z# ?        Agent(char id) {
% k% S& ~1 o0 ~3 Y  m0 ?                this.id = id;
% p% C; L# G+ ~& B! H# L        }1 l; v& S% B- S* v$ Y4 a( W
1 j$ n/ }2 A7 U* m
        public void agentStep() {
1 E2 M$ d& d8 x" M* q                System.out.println(id + ":" + Globals.env.getCurrentTime());
) v1 p7 x4 X: Z6 _' N% A) J3 }        }" {1 ]5 y# n' F: ^
}
3 r) g# H9 t5 `, {! @2 f$ c- U( m* W0 N% u- K8 j& S
public class ActionGroupDemo extends SwarmImpl {
: d+ K' u# a$ [        ScheduleImpl schedule;" B* f5 n. g. L* E" t) L2 q
        ActionGroupImpl actionGroup;% k; C* ]( r4 U; o5 f0 B
        ListImpl list;
7 }6 H, e2 r# V" c# L        char Id = 'a';4 d5 L2 W# w0 _2 u" Y

' m  I0 N% {* @2 |) |/ Z        ActionGroupDemo(Zone aZone) {
7 l9 _' R- V/ {) U                super(aZone);; A* @8 {! w" e4 [/ R5 |
                list = new ListImpl(aZone);
# U. T. N) ^6 m. r+ n- m( p3 Q                swarmSetp();* v, ^; F% S3 k: ?; T% w) {
                actionGroup = new ActionGroupImpl(aZone);
) L, H1 T7 Q) o- g                schedule = new ScheduleImpl(aZone);
& r( f# x0 Q' \  s* T$ ?4 ~5 g                try {7 ^+ V- b) c) |% S; @2 [. [
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
5 B' B! S' J% J1 O                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' F9 x$ n7 }8 \: w6 {* v0 `0 G                        - D* c( O' d1 ^
                        actionGroup.createActionForEach$message(list, agentSel);) r2 Q( E5 E: `; H. w
                        actionGroup.createActionTo$message(this, swarmSel);
+ P# W/ h( d7 N  w% I# P% {% @                        schedule.at$createAction(0, actionGroup);
1 Q8 W' T* e" b0 {4 W                        schedule.at$createAction(1, actionGroup);  W0 N' w5 G# l
                        schedule.at$createAction(2, actionGroup);% `9 M" M( i# w' W
0 ]. c" ^# U6 p
                } catch (Exception e) {' f- h) J3 w$ }9 K3 C( n
                        e.printStackTrace(System.err);
  e7 L; E$ A  w/ l                        //System.out.println(e);
" g" K. z4 p9 f  j% c% R* H, \4 @                        System.exit(1);  V8 {! D( x; K, C
                }$ `, i  X$ L% W' ~3 {8 T7 H
& }4 Q) @4 P3 p; X$ c) }
$ g- O8 ^' d1 @* Z4 S  L$ w5 ~
        }5 ?4 w- b4 t" [& J7 o) |

' S+ A7 c6 I; m0 g2 p% G% Q" L        private void swarmSetp() {
  T: D6 ~' p  a. a1 @0 q3 ^$ w/ P6 K                list.addLast(new Agent(Id));
5 C  _; `* q' D5 ^" o/ V                Id++;
$ A* H+ U6 X3 k8 h        }
/ I8 W. [+ _( t% y3 Z  Z( \$ ^  Y$ ?$ J; O6 B" m
        public Activity activateIn(Swarm context) {
& E2 V4 O9 ]* f1 ?6 r                super.activateIn(context);; U2 F" R; |, t& a3 T5 l! @  T
                schedule.activateIn(this);
8 I: O& r3 \6 V" G/ ^! \                return getActivity();# s' m3 G  s7 v3 D
        }
% r  w- ^" G& E( n  H$ [
2 O( Q7 R! Z+ W4 z9 j; {        public static void main(String[] args) {
: @- m1 Z  y0 |( A$ t                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
! ^0 T8 Z% [- q5 Z% q4 u" F" v                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);( z+ ]* Q3 \2 h4 @8 H) V
                swarms.buildObjects();: @9 f5 E; n, q* `" G
                swarms.buildActions();
* d6 u8 V7 t1 c$ [                swarms.activateIn(null).run();  z* G/ v. q  ~; E
        }
! `& @' o: J2 c6 s
# ]1 G8 U! j0 S}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-13 00:31 , Processed in 0.015111 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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