设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11133|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
- u8 N' P3 j+ V3 W) r8 V& c8 K2 ^, s0 ^* r1 W% w- Z5 L
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, Y2 `( t' T1 T& j+ z
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.- ^2 c: }% C% `: R" R
swarm.SignatureNotFoundException
, K/ K" Z3 x- k) c% [        at swarm.Selector.<init>(Selector.java:76), z$ K; ^$ x# w6 P  \4 ^( P
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37), e+ ~& Z2 @7 O; L7 `: P
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
* _5 f6 p. s% u) z; Z0 Y
3 M+ J/ N' Q$ z
6 h9 h& S. W3 a6 Mimport swarm.objectbase.SwarmImpl;
& y: Z8 o5 Q; T5 Z9 Limport swarm.objectbase.Swarm;  G- U# y) P# X2 a# Y+ ~+ I
import swarm.activity.ScheduleImpl;
! [) d8 J8 w% u8 Jimport swarm.activity.Activity;
6 Q4 I6 e2 v9 L8 E9 Y8 }import swarm.activity.ActionGroupImpl;" R7 b6 U$ I5 h# H9 e2 F
import swarm.collections.ListImpl;* {- Y) k8 B. @& i' P  h
import swarm.defobj.Zone; : F& a" @1 s( E, k5 I
import swarm.Globals;
$ {6 }* l5 _: G( {6 s% |& Uimport swarm.Selector;# D# p$ F2 B5 p: M  e0 p6 o
import swarm.activity.ActionGroup; ' G$ ~% t- F3 X* e
class Agent {
8 U: V( j% X* D3 R6 S        char id;+ C1 Z2 w% m# |5 Y# y1 ]/ X7 h
8 j; U3 D; ~) F( \# R* d. G) ?
        Agent(char id) {" u& S# o9 D7 `
                this.id = id;- D& y+ l* w- x! w
        }
( l4 z& b- n4 a7 \( ~3 I* {
  M+ E( M9 A/ s) Z4 G2 K6 J        public void agentStep() {
. M2 m$ _0 I3 V; h                System.out.println(id + ":" + Globals.env.getCurrentTime());) B8 w9 c" j& S! l. n
        }9 Q0 O) S! m9 p" Y- J3 b* r
}
$ k. ]1 ]7 N7 m% s1 r' `1 {; C5 e, ^8 j* t: n
public class ActionGroupDemo extends SwarmImpl {
  x4 D, I* y* X        ScheduleImpl schedule;) }4 z) [$ R1 H3 R( m7 \
        ActionGroupImpl actionGroup;
" l* s& L( q: p& L1 Z        ListImpl list;. W% i' C$ Y! W; [$ }3 l
        char Id = 'a';( o$ F% U6 e- T' R

! u; q6 e( j: u. h  B1 J7 S% Y! O        ActionGroupDemo(Zone aZone) {
' O3 Q+ P2 \/ L: j- K6 J                super(aZone);" [$ ^/ [0 m: c" U; r2 Y
                list = new ListImpl(aZone);. M. A6 E5 q! H# X6 K# b# G
                swarmSetp();
: R' N4 ?( y! d+ k2 j  M( @  m                actionGroup = new ActionGroupImpl(aZone);
: j) e/ K- X# S! l6 I' Q                schedule = new ScheduleImpl(aZone);
7 N' V' L: A2 G% G8 ?                try {
9 y" e1 z6 i8 V2 h9 e6 s                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
9 Z6 x. v8 I  h4 }, @, U                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
4 w' @5 ]! ~+ ?% p5 a. q. l9 P                        
8 |$ M! |9 ?% I" h; i$ L3 f( c                        actionGroup.createActionForEach$message(list, agentSel);
$ i0 L( ^3 ?% b+ J                        actionGroup.createActionTo$message(this, swarmSel);0 g1 h  ~4 e4 m* z' o9 Y
                        schedule.at$createAction(0, actionGroup);( M; e3 w0 U2 d
                        schedule.at$createAction(1, actionGroup);( G! y& N* D+ F1 h
                        schedule.at$createAction(2, actionGroup);
& D( j7 r. V: p; z) \/ _# O  k: p1 P, M
                } catch (Exception e) {7 F) m* N, Q5 q1 }& j0 K( U4 p: x$ F
                        e.printStackTrace(System.err);. h, ?, e0 T. G, E& U5 N
                        //System.out.println(e);/ c4 ~& e6 U4 F+ x. [
                        System.exit(1);
* E5 ~) W2 v2 \( z: C: F                }
( F. _; q. u1 ^; P) b
$ n; P, Z" d* d
7 M8 d% e  ?0 W9 i+ {) A' n        }
1 H$ T, Z3 L+ U+ `/ H  O: H+ S8 m. v  A! m2 d' J# V& }) y
        private void swarmSetp() {
+ t3 g1 P1 d" l                list.addLast(new Agent(Id));; a  t7 y2 J: v
                Id++;' j% T3 I2 v; X) q
        }
& g0 F% |' R5 K6 W) a2 U
7 Z- L9 P8 v9 T2 Q/ t- ~        public Activity activateIn(Swarm context) {
+ E9 J' H( ?) m: L                super.activateIn(context);8 R- f: [# ~% g, _0 w
                schedule.activateIn(this);
: S' f& ^9 L/ O2 P% i                return getActivity();8 s. ~; `* e- O+ j% l6 i8 O/ e
        }
3 b4 K6 K, B8 E' ?$ O4 o& M/ R( }1 ^9 q  m# G9 X; v, o
        public static void main(String[] args) {
* A. ]& D, m/ G0 R+ J# }/ Y4 X# |, E, ^                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);8 h8 h* s$ B9 y
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
8 C1 Y" f2 b8 `) }5 o                swarms.buildObjects();
$ N; u% [( i# P2 O                swarms.buildActions();
* L+ j1 N; z; K: Q/ r. v                swarms.activateIn(null).run();) w$ V( m! x, P6 J/ P
        }
8 P$ V( e4 C3 |! F' r) ~! r5 |& x7 |
6 h; M6 `8 i7 J6 H}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-4 00:30 , Processed in 0.018576 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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