设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5466|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑   X7 c  D: p- i8 l  O; a
7 q2 A) `, ?) t  \' ?0 ~/ A5 g
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
4 @3 v, f& L6 E' r以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
3 @) N$ K4 W4 A  Mswarm.SignatureNotFoundException
( d1 P" e- p- p& C. D+ @$ h        at swarm.Selector.<init>(Selector.java:76)
- |& T- E& t& Q* @5 M        at ActionGroupDemo.<init>(ActionGroupDemo.java:37); o. B2 S7 F1 B
        at ActionGroupDemo.main(ActionGroupDemo.java:67)( e/ I: D# d# ?0 \9 B
9 q2 l$ c+ C# ?. ?% I- x% e% {
) y& O% S5 _, f3 r6 I4 x- ]
import swarm.objectbase.SwarmImpl;
( a/ e+ a+ q4 ?7 f/ s' rimport swarm.objectbase.Swarm;, F8 ~: z6 @# @* @3 ~5 ?9 {
import swarm.activity.ScheduleImpl;" w& }+ Y( U! ^  l
import swarm.activity.Activity;6 u0 S# U0 f5 i. |5 ?
import swarm.activity.ActionGroupImpl;' a8 ~( E4 s, N7 i2 Z1 [2 k
import swarm.collections.ListImpl;2 f4 Q8 ~& j7 G, r5 q6 M
import swarm.defobj.Zone; 0 [3 G) |& b6 j* b/ M3 J+ X
import swarm.Globals;
- H' m8 u: L+ \9 Wimport swarm.Selector;! Z! \  o2 u0 n$ H' ~
import swarm.activity.ActionGroup;
! d# c- x" R' g5 X* Eclass Agent {& \* v. e; ~; {
        char id;
$ D& a  f5 i, a$ [: b3 A& @3 e, i% |/ a* r/ a% v3 F0 Q0 q* x* v' t
        Agent(char id) {
0 K- X2 P3 D+ M0 ]4 f* ]                this.id = id;
+ J# O1 C2 ]! k( ?. ?8 Q        }
( _. i& @- X: N% \3 D+ L5 L, D3 m; I+ y5 `9 b4 N
        public void agentStep() {
# ?6 L% h0 g6 l, Y                System.out.println(id + ":" + Globals.env.getCurrentTime());
* Z# P& v/ C" A* U6 a7 p5 |        }% K) h0 I4 s- s* e$ f6 K6 @3 m
}
/ o8 u3 t- z  D% A6 }1 L/ k. v% e6 }6 {6 o9 x* D5 x6 m- j4 d
public class ActionGroupDemo extends SwarmImpl {' Y5 }; y! b0 u
        ScheduleImpl schedule;3 Z8 d! K8 k" N2 h
        ActionGroupImpl actionGroup;
8 n( O# T+ t/ L# m2 Z2 }+ D        ListImpl list;
- x5 @: h8 V4 z2 o- [        char Id = 'a';, f" [5 _5 U% X5 G& d
, V, l% I& w% Z7 x7 k4 q8 E
        ActionGroupDemo(Zone aZone) {
( t  X' f9 r7 i8 H                super(aZone);" b7 d: o0 ^! k  h- K+ b
                list = new ListImpl(aZone);: e9 [; R% |, w1 z  J
                swarmSetp();$ ~3 P$ U4 f9 R- f8 y
                actionGroup = new ActionGroupImpl(aZone);
% W" I" b5 S! _' h1 _( ?( r' u                schedule = new ScheduleImpl(aZone);" v* o/ Z2 U  @
                try {
3 @6 p1 f- o/ h  I                        Selector agentSel = new Selector(Agent.class, "agentStep", false);1 X4 k) @) M/ U0 A
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行- G+ B+ v- l5 P* P+ B5 c0 l7 r
                        # H; |4 U/ g. W0 D% k- X2 t7 i
                        actionGroup.createActionForEach$message(list, agentSel);9 ]2 P7 f, ~# f  j. {
                        actionGroup.createActionTo$message(this, swarmSel);9 ]9 q' E* G7 f+ j- j; Q2 i5 H
                        schedule.at$createAction(0, actionGroup);& o$ O( a0 B/ `+ _* K% o# s
                        schedule.at$createAction(1, actionGroup);% d* ^/ i% j' P8 u
                        schedule.at$createAction(2, actionGroup);
8 T4 _8 J! Z- b( K. z) w3 a4 J% B' L- e3 k. e3 E* {" j/ t
                } catch (Exception e) {; s1 t" R" `- {7 P( u# K
                        e.printStackTrace(System.err);6 P& }1 M8 K3 \/ X# R7 C
                        //System.out.println(e);
; w! D6 L6 \, Z" @% U$ ]                        System.exit(1);
/ i, O$ }) b; V% ?2 \2 }5 Z                }
" Y' I7 G! E/ m5 P4 n' O2 a/ x
9 L+ Z3 t1 Q9 a, D* D0 k/ z1 b  O) ~, ~. U
        }
4 e: A- Q/ C! m. J3 v& Q
6 ~% m: P2 n0 Y! S  W7 ]  F- ]0 R        private void swarmSetp() {
. B$ o5 J! j! U( P: Y                list.addLast(new Agent(Id));) X; l) w  q4 A) Q) J
                Id++;
7 W6 x( E) D6 S  K, ]        }
% D- D) z7 G# C6 ]3 _8 R& j, S2 b$ ]- ^! E/ Z
        public Activity activateIn(Swarm context) {- T6 S1 q% A; F. s7 \% ^8 ~; V5 j2 j
                super.activateIn(context);4 L+ a( K1 }0 }. l
                schedule.activateIn(this);
2 `+ Y; [1 D$ F                return getActivity();# O7 E9 B' e5 H  T: w0 V/ l
        }
! G- G% ?2 ^4 ~4 O1 b6 s5 ~2 Q$ O4 S6 s. T0 M( ?7 d
        public static void main(String[] args) {
& L" A% a5 `  E  J" Q# I                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
: U& s( b9 X) ~& w& B                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);$ J6 a" F6 C$ ]4 U+ l: v* D
                swarms.buildObjects();
! ]6 q# H( a% ~# s/ o                swarms.buildActions();
. x" d" J6 m7 V5 ?- y2 x4 m                swarms.activateIn(null).run();
! X! M' Y8 u+ X" s. g( ~/ Y3 N        }; E0 w" X) g( p! B$ K1 [. t

( O& @: F5 j% u: a8 X8 I}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-9 21:53 , Processed in 0.018450 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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