设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13372|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# J2 \& a  D9 l" c2 u4 s
& I0 E8 M  [9 Q; D本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
& w/ e9 M( U0 y9 u7 B以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.% f) d; @- {" Y' R
swarm.SignatureNotFoundException. t7 k5 L5 H3 ^/ L% _; G
        at swarm.Selector.<init>(Selector.java:76)1 H  `0 G2 G8 {7 i( f
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)! a9 w$ h1 N7 O* M0 R7 p
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
% t, Y- `( }# K. p& N
/ p7 n7 Q2 b/ S4 f( f
  n. w4 R0 C* n8 E' Dimport swarm.objectbase.SwarmImpl;
: i" X; H! i5 Q2 A7 u, kimport swarm.objectbase.Swarm;2 U2 t$ S0 R& G1 O4 Q2 A
import swarm.activity.ScheduleImpl;
* _5 J% v; [" O2 iimport swarm.activity.Activity;: p# u0 X% k$ y: c4 O
import swarm.activity.ActionGroupImpl;: H% h4 c! B) J* H4 V# f: \4 s
import swarm.collections.ListImpl;
, N1 T0 G6 P9 p( {1 w7 Jimport swarm.defobj.Zone; . _4 y$ B! M7 n  w3 V
import swarm.Globals;5 a/ `! J# Q3 N, n  e0 h. R5 ?
import swarm.Selector;8 F4 s  A  x. w! L
import swarm.activity.ActionGroup; % T" k* ?# |+ C' J% S
class Agent {
* v! c1 H5 ~9 H2 v        char id;
7 P+ F- s1 Y9 E& M+ r7 T. F( L4 y
& ]: a% y: Z: ?4 K  q        Agent(char id) {" Y1 b6 C. ^( b% z; T  U
                this.id = id;+ c7 M% Z! _( b* @
        }
! T5 A7 l, r( z! j) d0 i' n! q" {9 o5 z/ s& s/ a
        public void agentStep() {- H# `& ?' S; s& @' d
                System.out.println(id + ":" + Globals.env.getCurrentTime());- i5 ?( T0 ^9 Q& e6 V
        }
" i6 _9 C( y; _6 {}
6 V; @5 b0 q2 h
' ^# N) r  q! u+ h# w5 L( qpublic class ActionGroupDemo extends SwarmImpl {8 ^! H& U* _7 g
        ScheduleImpl schedule;4 T/ y! x" t# U: a
        ActionGroupImpl actionGroup;
3 z, A+ y6 }' |1 {, I, f        ListImpl list;
! R- a& ~# R  {4 N: ?7 g2 S% W        char Id = 'a';+ N4 ^8 [1 B- L- @9 M) l  R

" D5 r7 q6 m+ i9 l8 C        ActionGroupDemo(Zone aZone) {
6 ^3 \' P3 m* `" I8 k- }                super(aZone);8 t9 ]% e' @7 }" J6 K: a
                list = new ListImpl(aZone);
2 u2 W1 u! L' C- l                swarmSetp();' B! L4 V' _  o  T( g
                actionGroup = new ActionGroupImpl(aZone);
" a1 F. u- r4 W) U                schedule = new ScheduleImpl(aZone);
( w! f1 a; G  d                try {' w8 g0 s1 J5 f# c+ t3 s
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
" T; ~: B) l% u  m4 U6 _                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
3 T' V6 {, F( f7 ^- U  n                        
" \/ y* Z9 |9 y4 b  U$ _) B* ~                        actionGroup.createActionForEach$message(list, agentSel);+ f6 N7 V* ?( N6 S
                        actionGroup.createActionTo$message(this, swarmSel);
6 ?1 Y- N) i8 {- _  k                        schedule.at$createAction(0, actionGroup);
1 Y; n# `3 [/ }, H! G3 _                        schedule.at$createAction(1, actionGroup);( P! V/ e& k3 f5 T/ c1 e0 B$ J, i' a
                        schedule.at$createAction(2, actionGroup);/ e0 {( u! T/ f, ~4 @1 Q# X
3 h  f( \; X# x; k, ~/ L- G9 y+ R
                } catch (Exception e) {
7 W% r6 h1 B, p1 G6 ^8 X/ _                        e.printStackTrace(System.err);( P' u. [+ R# |7 W2 m
                        //System.out.println(e);# x) z$ _, e* X# Y2 L/ S7 N
                        System.exit(1);; |' u! j) U! H! F3 c
                }
# O: g1 j, O; ]3 n& H3 T0 U, W
. [6 b* Z# `1 a5 R8 u+ i/ s: z9 f3 b& l. u8 W
        }
4 R6 c0 W2 H7 m4 T! |) n& b' [: }6 ]
        private void swarmSetp() {) w, S, i/ b$ ]& x7 N9 L  n
                list.addLast(new Agent(Id));
' x! z8 |6 \+ Q' E2 h( ?. _8 S                Id++;, X$ M. z, @) g! p5 ]0 i
        }8 E5 s6 q1 `. Y' ^* `* f+ A

' r" }0 ~) a) l" ~' ~1 X  ?8 X        public Activity activateIn(Swarm context) {
  w1 }/ _% ]4 d                super.activateIn(context);
" V9 d+ C/ Y0 e# v  k- m                schedule.activateIn(this);2 B1 I+ B/ G7 J
                return getActivity();7 r6 ?8 w) ~2 {
        }
) m: Y/ J4 E2 r4 v; D& K' k1 h7 r7 Q: _( c/ T
        public static void main(String[] args) {
6 a) U$ X' |- c/ n( D6 S) U( U                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);' l* I' O' u, K! b% O
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
  }$ Z/ k1 N4 O# B9 X& o& F5 a                swarms.buildObjects();
" ?0 u% v- V# I7 u                swarms.buildActions();
' ~# d; ~3 k. V- a- n" N* F8 w                swarms.activateIn(null).run();
6 N9 Z5 ~* h2 h% [. p  c1 ^% o        }. l7 s2 F5 v9 o' o6 c5 o! ^( I. T

" h5 Y2 e, Q* e7 z. L}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-5 07:51 , Processed in 0.013230 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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