设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8835|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 7 ^. q# W6 ]; u0 n, U1 n, t
- Z8 T7 D$ h3 ]' K2 x& {
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21. r5 w& u+ r$ R
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
; W4 b0 y: C9 d8 B! x- fswarm.SignatureNotFoundException5 _- U7 ]5 i: F, y" p
        at swarm.Selector.<init>(Selector.java:76)8 n5 v3 q: y# h  T" o
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37), _0 N; i; e0 X# _0 z
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
+ m) ]7 ^& R$ G) N0 P) r/ Z
( `2 A( Y6 K' B- c, ~  L* r2 W/ o' r0 d! a9 L( Y
import swarm.objectbase.SwarmImpl;% g, Z/ d; G# E
import swarm.objectbase.Swarm;7 R6 Z: R  i3 O0 s  c6 _: v
import swarm.activity.ScheduleImpl;1 \6 d5 @( M9 M& t+ U
import swarm.activity.Activity;
* [' w3 S1 `3 p, t! `3 C# Ximport swarm.activity.ActionGroupImpl;5 b, U$ ^8 B# F: {) ?/ W
import swarm.collections.ListImpl;* R% D' z2 k+ ^3 y! h- s7 R  w
import swarm.defobj.Zone; 6 h* f! F7 m$ D' N
import swarm.Globals;: `* j7 {* s) V3 w/ Y
import swarm.Selector;
6 x9 Y9 @: I8 a; x: B6 E" S0 |import swarm.activity.ActionGroup;
, f; R2 A; c: zclass Agent {
! c: T7 L8 F5 `5 r3 V4 A        char id;+ P) m5 c- f0 S# ?# L4 ~  D5 d
/ _- A; N) {  N5 K7 \
        Agent(char id) {7 \$ q0 X* V3 {( ~7 v
                this.id = id;
5 M( ~: T2 x) A& L* S        }$ e0 y- s4 z6 F1 q& v* S! u+ f% r" u
- Q' p. b5 |2 @7 v* a  D
        public void agentStep() {8 S# |( r, l) M* E
                System.out.println(id + ":" + Globals.env.getCurrentTime());5 J' e. O. Q4 }( C1 M( f# h
        }
( E9 M6 s* ]& |# S$ Z9 p' b) t! ~  g}
' ~% I* p0 r4 e: i; ?8 [( e' l6 L" R! {- p9 a6 T! ^2 d4 D
public class ActionGroupDemo extends SwarmImpl {
! M& ?, B: R0 `) _0 K        ScheduleImpl schedule;
' o; \8 \, t+ g- Y& I, o% p        ActionGroupImpl actionGroup;; ~3 p9 f# H# Q2 ^# v- ?
        ListImpl list;6 L. @  j3 q. D4 x  `# i4 W* c. C  q
        char Id = 'a';
/ X3 W! F6 b( r6 L$ Y5 v
; P, i8 Y/ U$ U2 N5 `; z8 V5 v5 c        ActionGroupDemo(Zone aZone) {
2 ~# X9 f) |! |$ n) [                super(aZone);2 r; v  G& y6 o9 x7 |, ]
                list = new ListImpl(aZone);
( g: W6 q$ r3 R8 x$ M                swarmSetp();- K& Y1 \2 p$ B7 \: W. I0 l
                actionGroup = new ActionGroupImpl(aZone);
8 g8 @" E, a1 s# \7 _                schedule = new ScheduleImpl(aZone);
) @( l  W6 a' }" S9 B& o( j. t                try {: g' O% C  ^1 g8 ~) n" A
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
5 y. k* o) |# ~" K8 W4 U                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' l2 c, z8 Z- d4 Z                        0 t! z! w8 I7 b& b6 e, T9 o
                        actionGroup.createActionForEach$message(list, agentSel);
" w4 l* C* d0 s  m                        actionGroup.createActionTo$message(this, swarmSel);! L5 H2 x4 h. H$ T( o4 |
                        schedule.at$createAction(0, actionGroup);
9 b3 ^6 _. E7 R9 ^                        schedule.at$createAction(1, actionGroup);
& \0 x4 G  J( j8 V                        schedule.at$createAction(2, actionGroup);( o+ h' v5 a2 I: F) h: i3 i
* D/ [. c) W& J
                } catch (Exception e) {+ V) x: D# V1 e" h$ t% z( d5 T) B5 o
                        e.printStackTrace(System.err);9 x% ]5 w! @, K$ R8 h! ]
                        //System.out.println(e);
  }4 A; p$ j5 w3 k# ^6 i' |                        System.exit(1);) N6 c/ G1 E* q3 T% y
                }
6 L6 \, W# m/ D0 ~9 X
( |6 U& i4 F3 R" Q8 |. B. T; g- i" A5 ], F4 Y; ]2 a+ E
        }
5 L4 ]; S) D8 c3 i9 {! L+ {# X; t. c+ Y. |' H8 |. c
        private void swarmSetp() {4 w& Z0 F7 J+ ~
                list.addLast(new Agent(Id));$ A7 u# O' Q; ]$ S8 K$ ]) m5 C9 P
                Id++;  q- i& }  ^' c9 o4 B) g. E
        }
* |$ P2 E. ^6 ?, k# t7 I7 _' W9 a8 Q+ Z! t
        public Activity activateIn(Swarm context) {
* g8 _) @% D* Y) w                super.activateIn(context);
' e3 I6 [& ?+ O3 [! q, F' D3 l                schedule.activateIn(this);' P) }! _" p& \2 |$ P, i
                return getActivity();
  f! i' w' U! _4 S; \- J: h" z. X& v        }
- V* i) `% X! Z4 \
, f# J( t  Q+ Z% ~8 R3 }# \        public static void main(String[] args) {/ K$ d+ c; O; n3 N6 F$ {
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
  c6 T/ J& u/ e- N                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
/ T! s  D: p# z8 Y                swarms.buildObjects();5 r4 |* U9 L$ S! N! W: y
                swarms.buildActions();
! [* i  D& {4 [                swarms.activateIn(null).run();% d, a( U. s1 u# Y/ C! f! R0 n
        }
. v6 s8 y9 J9 n4 k3 W( y0 J) t9 S! I. a5 D! `) B
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-24 05:30 , Processed in 0.017639 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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