设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13477|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 2 m6 B& S+ j6 d' Z1 r0 C, k. H# D
5 V! V" H$ G* e9 _( V) ?
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
2 J  K) z* `: n- L( _& L4 @以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
& j' s% U! }! b' w/ l6 @swarm.SignatureNotFoundException; s6 Z* F) E. D  u0 P0 u! X
        at swarm.Selector.<init>(Selector.java:76)
  c9 f; r' x. P" I7 |        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ p  _% F% G( g: p1 V        at ActionGroupDemo.main(ActionGroupDemo.java:67)* o' z: P1 {3 u: {

5 \/ U: _" S0 T9 [4 n/ q1 V
& p* i9 W6 @) i; J" q4 Rimport swarm.objectbase.SwarmImpl;* y, A- Z5 X8 o+ U8 G+ g% H
import swarm.objectbase.Swarm;
3 Y! h9 ?7 q% Y9 j* q% Gimport swarm.activity.ScheduleImpl;) r5 W% s* w5 W1 ]- D
import swarm.activity.Activity;! A* @4 R# k( e' I& Y" g) N
import swarm.activity.ActionGroupImpl;
2 G; J, j& S$ H1 a/ R/ ?: `. I9 fimport swarm.collections.ListImpl;  E+ V1 G1 J; ^# ^# p# V4 a$ I; U
import swarm.defobj.Zone;
' W; H+ Q7 o/ g% S2 A7 W9 [8 s4 Dimport swarm.Globals;$ d0 c* C% t$ a1 v6 w
import swarm.Selector;* @% o+ P; J* g/ Y+ |
import swarm.activity.ActionGroup;
' v, ~$ U" ~* u; f0 Yclass Agent {
" a/ H- a$ y) n$ ~; p4 ]: V0 l! m        char id;% p0 z! {" ~* a  T% l

) u' |" L( {: R' q, g        Agent(char id) {
9 b4 R+ H" k% ^: P! Z' T0 `                this.id = id;" C7 Y; U3 L# \. f8 n% g
        }0 g9 }) T1 W: E
  o6 `# Y8 j6 T
        public void agentStep() {
1 L1 l5 ~0 J( ^                System.out.println(id + ":" + Globals.env.getCurrentTime());
4 B4 ?. i' a; ~        }! o4 t4 d- n% T5 t' w) @7 L
}
& }; W, l+ V: o( }# A' [  O# d5 G1 ^$ D" G5 Y# q
public class ActionGroupDemo extends SwarmImpl {
% D) L: f% B3 O! ~$ ]( J        ScheduleImpl schedule;: m  f# ^- Z* E
        ActionGroupImpl actionGroup;2 {! z0 ?! U, e, m& q( i& ]) ]
        ListImpl list;
. W% K  y7 s# X9 M: X        char Id = 'a';9 j5 J& h1 {' k

0 t5 G  D; V2 o: o% ~        ActionGroupDemo(Zone aZone) {3 [1 w0 b' R7 R' X4 `8 W
                super(aZone);( `) U' O1 {1 {  `5 o1 x
                list = new ListImpl(aZone);8 K7 I( o0 X6 `5 k0 t6 y
                swarmSetp();
% b( X7 z/ |7 B( m                actionGroup = new ActionGroupImpl(aZone);# I) S  W* z$ ^2 |
                schedule = new ScheduleImpl(aZone);
5 x# U% G% ?" }' N6 E& K* i  x: f                try {
$ q7 C, F' b# E# X& l! O, ~3 g2 m                        Selector agentSel = new Selector(Agent.class, "agentStep", false);: J1 u& T0 H0 ~  }* x/ O
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行' w3 X( n; Z) E  P
                        
5 G& J8 p* q) L5 @; w- N% B8 |5 M                        actionGroup.createActionForEach$message(list, agentSel);8 m- L! I" i% k
                        actionGroup.createActionTo$message(this, swarmSel);
- ?$ c% A( R; I                        schedule.at$createAction(0, actionGroup);% t- }9 t( A& A7 T& Z* p8 W* u
                        schedule.at$createAction(1, actionGroup);
5 W, W+ h/ {- j: \( Z3 |                        schedule.at$createAction(2, actionGroup);
8 p& t" b8 Y5 r8 o1 \& S+ d# t+ g$ b+ Z. W# Y7 N7 p
                } catch (Exception e) {7 @! S- B1 x  n
                        e.printStackTrace(System.err);
) A* p) z/ k" F1 m& D" O                        //System.out.println(e);
' ^, a( R! I8 K+ M0 C                        System.exit(1);
4 A& u( n" ]" U" L                }
0 `  B" X) v/ a+ ?) |, B
2 a$ q$ \5 @; d8 ^0 W9 ~5 U5 m0 g% P/ z% U* O" Z( o3 V! \" ~
        }
; H! y+ [0 G; @2 e9 I% P8 \& e% Y
% S+ Q( g; V* V! @' `. C3 `, v        private void swarmSetp() {4 t3 F& n4 N6 q+ \. z) I
                list.addLast(new Agent(Id));' W2 T1 F" y7 m, g
                Id++;
9 R6 n* t0 u5 ?6 P  [3 Q8 o- Q3 z        }
, C5 [; Q- I. n6 A8 y# ]* V! U8 _: c! c
        public Activity activateIn(Swarm context) {& n, a$ P$ ?! }
                super.activateIn(context);
% S' {, S+ d  D& B# g& V                schedule.activateIn(this);
/ B* q  q. W2 I: z: u# c                return getActivity();0 e* E3 g# W# x; z+ y1 R2 X5 N
        }! K0 G$ S1 m# z! u' q
8 T9 T% p* {( R
        public static void main(String[] args) {# ~9 x8 V- h  H0 l1 M
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);3 P- Y# z3 C  z2 _- r4 \6 t3 |$ Q
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
; R+ L" T9 R: U- j, R2 Y                swarms.buildObjects();
& r4 V$ a3 d9 q( O% p2 s) b# O4 I                swarms.buildActions();7 F: |, ?# @5 A. t1 _; ]. u
                swarms.activateIn(null).run();
% @, f0 T, w: L! Q! d$ i        }0 x' C& j7 D2 _& `, ]9 O6 y

: [3 k: K2 s2 T: ^8 ]. J* [}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-8 05:04 , Processed in 0.015009 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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